Smart forms customizing

i want to customize the smart form ..for sd commercial invoice
i have copied standard smart and driver program ...
i facing complexity in changing driver program their   3 include structures r there ...how to know  it is to change r to delete .
i want some advice that what is the procedure to approach for standard ones .

Hi Raghu,
Firstly you need to get the Program name and FORM routine name from NACE configuration which could obtain from functional consultant or elsewhere.
Next, you need to look for entry routine in the FORM routine so that you can capture the NAST-OBJKEY.
And then based on the nast-objkey select you relevant data from relevant tables and view it using SSF_FUNCTION_MODULE_NAME funtion module.
Regards,
Dep

Similar Messages

  • Customer quality Certificate-Smart form

    Hi Experts!
    I have developed smart form -Customer quality Certificate,need to attach that smart form to output type LQCB
    and generate that Smartform by standard tcode QC22. I have replaced Std scrtpt program with Smart form but till QC22 is calling old script only but I need smartform to be called
    Can anybody tell me how to trigger  Smart form from QC22/QC21
    Thanks
    Jay

    Hello Jayashankar
    You will have to maintain the form detials in 2 places
    1)  In config Which i think you have maintained
    SPRO>QM> Quality Certificates > Output Determination> Define Condition Types for Output Determination> Define Condition Types for Output Determination > LQCB > Processing routines > Print out > You can give the program and Form
    2) In the certificate Recipient VV21 - select the customer and click on Communication button and maintain in Print setting , Smart form
    This should work
    Regards
    Gajesh

  • Output in Customer Language for Service Dispatch Note Smart form

    We have upgraded from ECC 5.0 to ECC 6.0.
    After the upgrade we are facing an issue in some of our Service related smart forms.
    The version of the driver program is same in both the systems and the smart form is also same.
    The customer's language is maintained in Customer Master data.
    In the un-upgraded system, the forms were printed in the Customer language according to what is maintained in the customer master data.
    But after the upgrade, in the new system, the form is being printed in English as opposed to the Customer language in the older system.
    As I have already mentioned above, in both the systems, the driver program, smart form and Customer Language in the customer master data are similar.
    Kindly suggest me the solution if anyone has faced a similar problem.

    Hi, Actually I have checked in debugging and have come to know that during the upgrade, when I have downloaded the form from ECC 5.0 and uploaded it to ECC6.0, the Language option in the general attributes tab of the text modules is blank and hence the form is displayed in English only.
    Is there any way that I can get the smartform uploaded as it is in the earlier system?

  • One-Time Customer or Vendor Address Printing in Smart Forms

    Hi friends,
    I am using the Address Node in Smart Forms to print the Addresses in Tax Invoice Printing. How to get the address details for the One-Time Customers which is stored in the BSEC table using the same Address Function.
    (We can directly get the address details from BSEC and display it by using a separate Text Node. But the address formatting according to the recipient country postal standards will be handled only by Address Function in Smart Forms right)
    Regards,
    Riaz.

    Hi friends,
    I am using the Address Node in Smart Forms to print the Addresses in Tax Invoice Printing. How to get the address details for the One-Time Customers which is stored in the BSEC table using the same Address Function.
    (We can directly get the address details from BSEC and display it by using a separate Text Node. But the address formatting according to the recipient country postal standards will be handled only by Address Function in Smart Forms right)
    Regards,
    Riaz.

  • Use of NACE after creating print program n smart form

    Wat's d purpose of NACE?I hav created my own print program n smart form according to my own requirement.If NACE is necessary 4 my smart from.How can i use NACE i mean navigation steps.
    Please help me out.Its urgent.
    Thanks & Regards,
    Santhosh.

    Hi Santhosh,
    Nace is for message control settings. Say if u want to trigger a Smartform or an Idoc or any other customized program u can do the message control settings.
    Say at the time of Sales Order creation or updation u want to trigger a Smartform, then u have to follow the following steps:
    Goto NACE
    Select application V1 and then click Output Type.
    create a new Output type or copy the existing one abd save it with new name
    then in Processing Routine Mention the driver program name and in Form routine mention the main subroutine name.
    In Smartform mention your SMartform name and also the layout if u have ceated.
    Again go to NACE and Select application V1 and press Procedures.
    here out of the many procedures u have to select the right one and attach your Output Type to it.
    You can also create a condition record..Say if u want to trigger this Smartforms for Sales Order of particular type.
    Hope this helps.
    Reward Points if useful.
    Thanks.

  • SMART FORMS

    i have copied a driver programe of outbound delivery and modified in such a way the layout will convert to pdf and then download to pc, but the driver program is not executing online, so do i need to attache the driver program name and form name in nace t.code or how would i execute the program, when i am placing a break point in driver program and execute form its not stopping at break point, i am new to forms, help me out in this.
    i have placed the code below plz verify it and say if any thing is wrong in the code, u will be shurely rewareded.
         Print of a delivery note by SAPscript SMART FORMS               *
    REPORT Z_RLE_DELNOTE1.
    declaration of data
    INCLUDE Z_RLE_DELNOTE_DATA_DECLARE1.
    *INCLUDE RLE_DELNOTE_DATA_DECLARE.
    definition of forms
    INCLUDE Z_RLE_DELNOTE_FORMS1.
    *INCLUDE RLE_DELNOTE_FORMS.
    INCLUDE Z_RLE_PRINT_FORMS1.
    *INCLUDE RLE_PRINT_FORMS.
          FORM ENTRY
    FORM ENTRY USING RETURN_CODE US_SCREEN.
      DATA: LF_RETCODE TYPE SY-SUBRC.
      XSCREEN = US_SCREEN.
      PERFORM PROCESSING USING    US_SCREEN
                         CHANGING LF_RETCODE.
      IF LF_RETCODE NE 0.
        RETURN_CODE = 1.
      ELSE.
        RETURN_CODE = 0.
      ENDIF.
    ENDFORM.
          FORM PROCESSING                                               *
    FORM PROCESSING USING    PROC_SCREEN
                    CHANGING CF_RETCODE.
      DATA: LS_PRINT_DATA_TO_READ TYPE LEDLV_PRINT_DATA_TO_READ.
      DATA: LS_DLV_DELNOTE        TYPE LEDLV_DELNOTE.
      DATA: LF_FM_NAME            TYPE RS38L_FNAM.
      DATA: LS_CONTROL_PARAM      TYPE SSFCTRLOP.
      DATA: LS_COMPOSER_PARAM     TYPE SSFCOMPOP.
      DATA: LS_RECIPIENT          TYPE SWOTOBJID.
      DATA: LS_SENDER             TYPE SWOTOBJID.
      DATA: LF_FORMNAME           TYPE TDSFNAME.
      DATA: LS_ADDR_KEY           LIKE ADDR_KEY.
    *Begin of changes by 67.
      DATA:   ls_document_output_info TYPE ssfcrespd,
              ls_job_output_options TYPE ssfcresop.
    *End of changes by 67.
    SmartForm from customizing table TNAPR
      LF_FORMNAME = TNAPR-SFORM.
    determine print data
      PERFORM SET_PRINT_DATA_TO_READ USING    LF_FORMNAME
                                     CHANGING LS_PRINT_DATA_TO_READ
                                     CF_RETCODE.
      IF CF_RETCODE = 0.
    select print data
        PERFORM GET_DATA USING    LS_PRINT_DATA_TO_READ
                         CHANGING LS_ADDR_KEY
                                  LS_DLV_DELNOTE
                                  CF_RETCODE.
      ENDIF.
      IF CF_RETCODE = 0.
        PERFORM SET_PRINT_PARAM USING    LS_ADDR_KEY
                                CHANGING LS_CONTROL_PARAM
                                         LS_COMPOSER_PARAM
                                         LS_RECIPIENT
                                         LS_SENDER
                                         CF_RETCODE.
      ENDIF.
    *Begin of changes by 67.
    CALL FUNCTION 'SSF_GET_DEVICE_TYPE'
      EXPORTING
        i_language                  = v_language
       I_APPLICATION                = 'SAPDEFAULT'
    IMPORTING
       E_DEVTYPE                    = v_e_devtype
    st_output_options-tdprinter = v_e_devtype.
    *st_output_options-tdprinter = 'locl'.
    LS_CONTROL_PARAM-no_dialog = 'X'.
    LS_CONTROL_PARAM-getotf = 'X'.
    *End of changes by 67.
      IF CF_RETCODE = 0.
    determine smartform function module for delivery note
        CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
             EXPORTING
                      FORMNAME           = LF_FORMNAME
                    variant            = ' '
                    direct_call        = ' '
             IMPORTING
                      FM_NAME            = LF_FM_NAME
             EXCEPTIONS
                        NO_FORM            = 1
                        NO_FUNCTION_MODULE = 2
                        OTHERS             = 3.
        IF SY-SUBRC <> 0.
      error handling
          CF_RETCODE = SY-SUBRC.
          PERFORM PROTOCOL_UPDATE.
        ENDIF.
      ENDIF.
      IF CF_RETCODE = 0.
      call smartform delivery note
        CALL FUNCTION LF_FM_NAME
             EXPORTING
                      ARCHIVE_INDEX        = TOA_DARA
                      ARCHIVE_PARAMETERS   = ARC_PARAMS
                      CONTROL_PARAMETERS   = LS_CONTROL_PARAM
                    mail_appl_obj        =
                      MAIL_RECIPIENT       = LS_RECIPIENT
                      MAIL_SENDER          = LS_SENDER
                      OUTPUT_OPTIONS       = LS_COMPOSER_PARAM
                      USER_SETTINGS        = ' '
                      IS_DLV_DELNOTE       = LS_DLV_DELNOTE
                      IS_NAST              = NAST
    *Begin of changes by 67.
          importing
                     document_output_info = ls_document_output_info      "67
                     job_output_info      = tab_otf_data
                     job_output_options   = ls_job_output_options        "67
           EXCEPTIONS
                      FORMATTING_ERROR     = 1
                      INTERNAL_ERROR       = 2
                      SEND_ERROR           = 3
                      USER_CANCELED        = 4
                      OTHERS               = 5.
    *End of changes by 67.
        IF SY-SUBRC <> 0.
      error handling
          CF_RETCODE = SY-SUBRC.
          PERFORM PROTOCOL_UPDATE.
        get SmartForm protocoll and store it in the NAST protocoll
          PERFORM ADD_SMFRM_PROT.                  "INS_HP_335958
        ENDIF.
      ENDIF.
    get SmartForm protocoll and store it in the NAST protocoll
    PERFORM ADD_SMFRM_PROT.                       DEL_HP_335958
    --Function  modules conversts from otf to pdf format.--
    *Begin of chanes by 67.
    CALL FUNCTION 'CONVERT_OTF_2_PDF'
    EXPORTING
      USE_OTF_MC_CMD               = 'X'
      ARCHIVE_INDEX                =
    IMPORTING
       BIN_FILESIZE                 = v_bin_filesize
      TABLES
        otf                          = v_tab_otf_final
        doctab_archive               = v_it_docs
        lines                        = v_it_lines
    EXCEPTIONS
      ERR_CONV_NOT_POSSIBLE        = 1
      ERR_OTF_MC_NOENDMARKER       = 2
      OTHERS                       = 3
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    CALL FUNCTION 'GUI_DOWNLOAD'
      EXPORTING
       BIN_FILESIZE                    = v_bin_filesize
       filename                        = 'D:\67.PDF'
       FILETYPE                        = 'BIN'
      APPEND                          = ' '
      WRITE_FIELD_SEPARATOR           = ' '
      HEADER                          = '00'
      TRUNC_TRAILING_BLANKS           = ' '
      WRITE_LF                        = 'X'
      COL_SELECT                      = ' '
      COL_SELECT_MASK                 = ' '
      DAT_MODE                        = ' '
      CONFIRM_OVERWRITE               = ' '
      NO_AUTH_CHECK                   = ' '
      CODEPAGE                        = ' '
      IGNORE_CERR                     = ABAP_TRUE
      REPLACEMENT                     = '#'
      WRITE_BOM                       = ' '
      TRUNC_TRAILING_BLANKS_EOL       = 'X'
    IMPORTING
       FILELENGTH                      = v_file_size
      tables
        data_tab                       = v_pdf_tab
      FIELDNAMES                      =
    EXCEPTIONS
       FILE_WRITE_ERROR                = 1
       NO_BATCH                        = 2
       GUI_REFUSE_FILETRANSFER         = 3
       INVALID_TYPE                    = 4
       NO_AUTHORITY                    = 5
       UNKNOWN_ERROR                   = 6
       HEADER_NOT_ALLOWED              = 7
       SEPARATOR_NOT_ALLOWED           = 8
       FILESIZE_NOT_ALLOWED            = 9
       HEADER_TOO_LONG                 = 10
       DP_ERROR_CREATE                 = 11
       DP_ERROR_SEND                   = 12
       DP_ERROR_WRITE                  = 13
       UNKNOWN_DP_ERROR                = 14
       ACCESS_DENIED                   = 15
       DP_OUT_OF_MEMORY                = 16
       DISK_FULL                       = 17
       DP_TIMEOUT                      = 18
       FILE_NOT_FOUND                  = 19
       DATAPROVIDER_EXCEPTION          = 20
       CONTROL_FLUSH_ERROR             = 21
       OTHERS                          = 22.
    IF sy-subrc <> 0.
      MESSAGE i001(z00) WITH 'File not downloaded succesfully'.
      else.
      MESSAGE i002(z00) WITH 'File 67.PDF downloaded succesfully under D: drive'.
    ENDIF.
    *End of changes by 67.
    ENDFORM.

    Hi,
    Make sure that the output type you are using is configured for your custom-copied program name, form routine, and the form you are using. The output types can be found in transaction NACE.
    Award points if found helpful.
    Thanks,
    Leo

  • To convert Smart Form output to PDF format and send it via email.

    Hi Friends,
    Could any one please tell me, how to convert the Smart Forms output to PDF format and send it via email to customer. If any one have the code, kindly mail me to [email protected]
    Thanks & Regards,
    John

    Refer the links -
    how to convert smartform into pdf and send through mail
    Smartform as PDF attachment to a mail.
    smartform pdf and mail
    smartform to pdf to mail
    Regrads,
    Amit
    Reward all helpful replies.

  • Is it possible to get direct print without preview of the Smart Form?

    Hi,
    I developed a custom report where line items are coming with a check-box in front of each item. User can select single/multiple line-items by checking those check-boxes. The report also has a PRINT button in application tool bar by clicking which a Smart Form will be printing for each item. Thats mean, for 10 selected line items, 10 forms will be printed.
    But, after clicking the PRINT button, print preview of the form is coming and from there I can go for a print/printer. I do not need the print preview and want to have the direct print option while clicking the PRINT button. How can I have this functionality?
    Thanks in Advance
    Roy

    Hi,
    Initially I get the Form Name by calling FM: SSF_FUNCTION_MODULE_NAME and I store it in l_fm_name. now calling the FM: l_fm_name like below:
    LOOP AT i_item INTO wa_item.
    CALL FUNCTION l_fm_name
              EXPORTING
                wa_item                    = wa_item
             EXCEPTIONS
               formatting_error           = 1
               internal_error             = 2
               send_error                 = 3
               user_canceled              = 4
               OTHERS                     = 5.
            IF sy-subrc <> 0.
              MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                      WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
            ENDIF.
    ENDLOOP.
    As I have multiple form need to print, I am calling the smartform in loop.

  • Error in opening the PDF file created from the smart form output.

    Hi All,
    i have a simple smart form which takes 3 values like customer no, name and no of times customer called and gives an out like
    Customer 0001000000 with name Ravi called 5 times today.
    I have to send this output to mail as an attachment.
    for this i am coding as below.
    ******Call the SSF Function module
    CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
    EXPORTING
    formname = Form name
    VARIANT = ' '
    DIRECT_CALL = ' '
    IMPORTING
    fm_name = lv_fmname
    EXCEPTIONS
    no_form = 1
    no_function_module = 2
    OTHERS = 3
    lv_partner_number = '0001000000'.
    lv_name_org1 = 'Ravi'.
    lv_z_no_calls_day = '5'.
    lw_ctrlop-getotf = 'X'.
    lw_ctrlop-no_dialog = 'X'.
    lw_compop-tdnoprev = 'X'.
    lw_compop-tddest = 'LP01'.
    *******Call the Form Function module and get the OTF of form output
    CALL FUNCTION lv_fmname
    EXPORTING
    name_org1 = lv_name_org1
    partner_number = lv_partner_number
    z_no_calls_day = lv_z_no_calls_day
    control_parameters = lw_ctrlop
    output_options = lw_compop
    user_settings = ' '
    IMPORTING
    job_output_info = w_return
    EXCEPTIONS
    formatting_error = 1
    internal_error = 2
    send_error = 3
    user_canceled = 4
    OTHERS = 5.
    i_otf] = w_return-otfdata[.
    *********Now here if i look in to the OTF data i got in debug it has the data i aniticipated along with some other data.
    the output is in the format
    TDPRINTCOM(2) TDPRINTPAR(70)
    ST XXXX.. customer 0001000000 with
    name.....
    i have my data in the above format spread in three lines of the output otf table where XXXX... is some number.
    ***********To convert to PDF Format
    CALL FUNCTION 'CONVERT_OTF'
    EXPORTING
    format = 'PDF'
    max_linewidth = 132
    IMPORTING
    bin_filesize = lv_len_in
    BIN_FILE =
    TABLES
    otf = i_otf
    lines = i_tline
    EXCEPTIONS
    err_max_linewidth = 1
    err_format = 2
    err_conv_not_possible = 3
    err_bad_otf = 4
    OTHERS = 5
    *********For testing purpose i created a file on the desktop with the the data in i_tline. it created PDF file but when i tried to open it it's giving an error.
    i_objtxt = 'test with pdf-Attachment!'.
    APPEND i_objtxt.
    DESCRIBE TABLE i_objtxt LINES v_lines_txt.
    READ TABLE i_objtxt INDEX v_lines_txt.
    wa_doc_chng-obj_name = 'Smart Form'.
    wa_doc_chng-obj_descr = 'Frequent Caller Alert_Day'.
    wa_doc_chng-doc_size = ( v_lines_txt - 1 ) * 255 + STRLEN( i_objtxt ).
    *********Creating the Entry for the document
    CLEAR i_objpack-transf_bin.
    i_objpack-head_start = 1.
    i_objpack-head_num = 0.
    i_objpack-body_start = 1.
    i_objpack-body_num = v_lines_txt.
    i_objpack-doc_type = 'RAW'.
    APPEND i_objpack.
    i_objbin] = i_tline[.
    DESCRIBE TABLE i_objbin LINES v_lines_bin.
    READ TABLE i_objbin INDEX v_lines_bin.
    i_objhead = 'Frequentcaller list_Day.pdf'.
    APPEND i_objhead.
    ************Creating the entry for the attachment.
    CLEAR : i_objpack.
    i_objpack-transf_bin = 'X'.
    i_objpack-head_start = 1.
    i_objpack-head_num = 1.
    i_objpack-body_start = 1.
    i_objpack-body_num = v_lines_bin.
    i_objpack-doc_type = 'PDF'.
    i_objpack-obj_name = 'ATTACHMENT'.
    i_objpack-obj_descr = 'FCA'.
    i_objpack-doc_size = v_lines_bin * 255 .
    APPEND i_objpack.
    CLEAR i_reclist.
    i_reclist-receiver = 'mail id'.
    i_reclist-rec_type = 'U'.
    APPEND i_reclist.
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
    EXPORTING
    document_data = wa_doc_chng
    put_in_outbox = 'X'
    commit_work = 'X'
    TABLES
    packing_list = i_objpack
    object_header = i_objhead
    contents_bin = i_objbin
    contents_txt = i_objtxt
    receivers = i_reclist
    EXCEPTIONS
    too_many_receivers = 1
    document_not_sent = 2
    operation_no_authorization = 4
    OTHERS = 99.
    This is all i am doing.
    It is sending a mail with the attachment but we are not able to open the attachment. it's giving an error like file is damaged and couldn't be repaired.
    I serched in the forum but i couldn't get the answer.
    I suspect there is a problem in getting the OTF data..
    Please help me in resolving this issue....
    Thanks in advance.
    RK

    Check the sample , and see where you made the mistake.
    REPORT ZPDF_MAIl.
    DATA:
      w_fm_name      TYPE rs38l_fnam,
      w_bin_filesize TYPE i,
      w_filesize     TYPE i,
      w_lines_txt    TYPE i,
      w_lines_bin    TYPE i.
    DATA:
      wa_ctrlop   TYPE ssfctrlop,
      wa_outopt   TYPE ssfcompop,
      wa_objhead  TYPE soli_tab,
      wa_buffer   TYPE string,
      wa_doc_chng TYPE sodocchgi1.
    DATA:
      BEGIN OF t_mail_ids OCCURS 0,
        mailid TYPE ad_smtpadr,
      END OF t_mail_ids,
      t_otfdata TYPE ssfcrescl,
      t_otf TYPE itcoo OCCURS 0 WITH HEADER LINE,
      t_pdf_tab TYPE tline OCCURS 0 WITH HEADER LINE,
      t_objpack LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
      t_objtxt LIKE solisti1 OCCURS 0 WITH HEADER LINE,
      t_objbin LIKE solisti1 OCCURS 0 WITH HEADER LINE,
      t_record LIKE solisti1 OCCURS 0 WITH HEADER LINE,
      t_reclist LIKE somlreci1 OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
      EXPORTING
        formname           = 'Z195_TEST'
      IMPORTING
        fm_name            = w_fm_name
      EXCEPTIONS
        no_form            = 1
        no_function_module = 2
        OTHERS             = 3.
    IF sy-subrc EQ 0.
    ENDIF.                               " IF sy-subrc EQ 0.
    wa_ctrlop-getotf = 'X'.
    wa_ctrlop-no_dialog = 'X'.
    wa_outopt-tdnoprev = 'X'.
    CALL FUNCTION w_fm_name
      EXPORTING
        control_parameters = wa_ctrlop
        output_options     = wa_outopt
        user_settings      = 'X'
      IMPORTING
        job_output_info    = t_otfdata
      EXCEPTIONS
        formatting_error   = 1
        internal_error     = 2
        send_error         = 3
        user_canceled      = 4
        OTHERS             = 5.
    IF sy-subrc EQ 0.
    ENDIF.                               " IF sy-subrc EQ 0.
    t_otf[] = t_otfdata-otfdata[].
    CALL FUNCTION 'CONVERT_OTF'
      EXPORTING
        format                = 'PDF'
        max_linewidth         = 132
      IMPORTING
        bin_filesize          = w_bin_filesize
      TABLES
        otf                   = t_otf
        lines                 = t_pdf_tab
      EXCEPTIONS
        err_max_linewidth     = 1
        err_format            = 2
        err_conv_not_possible = 3
        err_bad_otf           = 4
        OTHERS                = 5.
    IF sy-subrc EQ 0.
    ENDIF.                               " IF sy-subrc EQ 0.
    LOOP AT t_pdf_tab.
      TRANSLATE t_pdf_tab USING '~'.
      CONCATENATE wa_buffer t_pdf_tab INTO wa_buffer.
    ENDLOOP.
    TRANSLATE wa_buffer USING '~'.
    DO.
      t_record = wa_buffer.
      APPEND t_record.
      SHIFT wa_buffer LEFT BY 255 PLACES.
      IF wa_buffer IS INITIAL.
        EXIT.
      ENDIF.
    ENDDO.
    t_objtxt = ' To Change the COR, Use the Transaction ZCOR_CHANGE'.
    APPEND t_objtxt.
    t_objtxt = ' Check the Attached PDF file for COR'.
    APPEND t_objtxt.
    DESCRIBE TABLE t_objtxt LINES w_lines_txt.
    READ TABLE t_objtxt INDEX w_lines_txt.
    READ TABLE t_objtxt INDEX w_lines_txt.
    wa_doc_chng-obj_name = 'COR Display'.
    wa_doc_chng-expiry_dat = sy-datum + 10.
    CONCATENATE 'COR' "w_cornr
                '-' "w_stat_descr w_action_desc
           INTO wa_doc_chng-obj_descr SEPARATED BY space.
    wa_doc_chng-sensitivty = 'F'.
    wa_doc_chng-doc_size =  w_lines_txt  * 255.
    CLEAR t_objpack-transf_bin.
    t_objpack-head_start = 1.
    t_objpack-head_num = 0.
    t_objpack-body_start = 1.
    t_objpack-body_num = w_lines_txt.
    t_objpack-doc_type = 'RAW'.
    APPEND t_objpack.
    t_objpack-transf_bin = 'X'.
    t_objpack-head_start = 1.
    t_objpack-head_start = 1.
    t_objpack-head_num = 0.
    t_objpack-body_start = 1.
    DESCRIBE TABLE t_objbin LINES w_lines_bin.
    READ TABLE t_objbin INDEX w_lines_bin.
    t_objpack-doc_size = w_lines_bin * 255 .
    t_objpack-body_num = w_lines_bin.
    t_objpack-doc_type = 'PDF'.
    t_objpack-obj_name = 'COR'.
    t_objpack-obj_descr = 'COR Test'.
    * concatenate 'COR' w_cornr into t_objpack-obj_descr
    *                           separated by space.
    APPEND t_objpack.
    *LOOP AT t_mail_ids.
      CLEAR t_reclist.
      t_reclist-receiver = 'INTENATEMAIL'.
      t_reclist-rec_type = 'U'.
      APPEND t_reclist.
    *ENDLOOP.
    CALL FUNCTION 'SO_NEW_DOCUMENT_ATT_SEND_API1'
      EXPORTING
        document_data              = wa_doc_chng
        put_in_outbox              = 'X'
        commit_work                = 'X'
      TABLES
        packing_list               = t_objpack
        object_header              = wa_objhead
        contents_bin               = t_objbin
        contents_txt               = t_objtxt
        receivers                  = t_reclist
      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.
    IF sy-subrc EQ 0.
    ENDIF.

  • How to print BAR CODE in SAP SMART FORMS

    Hi,
    I want to print inspection lot's BAR CODE in the smart form, but i dont know the way how to print this into the smartform.
    if anyone have any idea, please suggest me how to print this as it is urgent for me to complete the object.
    Thanks in advance.
    Best Regards,
    Abnish Jain

    Hello Abnish,
    Welcome to SDN.
    We are able to print barcodes from smartforms. Doing this way, we print barcodes on laser printers.
    We are also printing from sap to zebra printers using two ways:
    1. Download the data to an excel sheet, then creating a macro that opens the printer port and sending the commands to the printer through this "file". All this is done via vb script provided with excel)..
    2. The second way is creating a vbscript (an ascii file from sap) with the printer commands and then runing it using ws_execute.
    You need a barcode reader to read the barcodes, and this scanner acts like a keyboard, it sends the data scanned to the active field on screen. (which might be a notepad, word, excel or an input field or ... ).
    From 4.6c on, you can use smartforms to print barcodes without buying any barcode.dll software nor hardware extention like Bardimm on any laser/inkjet printer (Please Note that I haven't mentioned Zebra printers here!). To do this, you have to create a smartstyle -> character format with the desired barcode font (defined within sap). Then in the smartform, create a window, put the field and associate it the character format. That's all (I mean, that's all we do at least :-). I think, you have to consider the barcode specifications before sending the barcode value to the smartform (Just an example, if you're using 3 of 9, the code should start and end with an asterisk - '*' -) We're printing an interleaved 2 out of 5 barcode in our invoices due to a legal requirement, and we did it this way.
    3. If you have a barcode scanner, then you should not need reading the barcode into an ascii file to get the data read in an standard or custom screen field. You can read it directly to the field you want. (unless... you have complex data coded in the barcode - for example if you're using an ean-ucc 128 compliant code and you're sending several fields in a single code ... In this case, an interface is almost mandatory because you must interpret the data fields according to the ucc standard, split the code into several fields .... and .... pure programming logic ).
    To put it clear: if you have to read, for example, a barcode that holds the legal number of an invoice using a barcode scanner and this number should be sent to migo-> bktxt then you don't need an interface. The scanner itself acts like a fast operator entering the characters using a keyboard and filling in the field.
    We're reading barcodes in several places (when we finish each pallet, when we receive an invoice, and so on. Each case is a different screen. We arent using an ascii file to read these barcodes. Furthermore, we read the invoice legal number into migo bktxt field (Head Text).
    http://www.sap-img.com/abap/questions-about-bar-code-printing-in-sap.htm
    Regards
    Naren

  • Issue Regarding Chinese characters In Smart Form Print preview..

    Hi All,
    I am working on a smart form development for chinese users. The requirement is the user will login using English & when the delivery will be issued for output, a check will be done on the country of user. If that comes as china then the international version (C) maintained for that customer will come as output.
    Now the problem is even if I login using EN or ZH the below issue I am facing always.
    In the database I can view the details in chinese properly by logging in as ZH. During debugging also i checked the data from table ADRC & MAKT is coming in chinese properly. But when i gave the values to be output in SmartForm, it is showing the characters like how it will look if I login using EN & view the table contents.
    When i view the data by changing character set as Simplified Chinese then in table i can see chinese texts properly. But when the same data goes to print preview it shows the chinese characters like as it would appear when character set is Unicode or West European..
    Please help..
    Thanks in advance.
    Edited by: malayanayak123 on Jun 1, 2011 5:48 AM

    Dear,
    print preview and physical printout are two different things.
    PrintPreview:
    The data stream will be sent to the frontend and rendered with windows-fonts etc (for backend prints a simulation).
    Printout:
    Frontend: You need a printer, that maps the character, you have to use SAPWIN or SAPWINCF when using cascading fonts. The rendering will be done in the windows spooler.
    Backend: Your printer needs also a mapping (look like something with UTF8). Also the printer needs the fonts installed because the rendering will be done in the printer!
    If you use the pdf-printer in SAP, you need to upload all necessary fonts (TTF) for the pdf-composer. Also you need a unicode pdf printer for that.
    Regards,
    Christian

  • Writing Dynamic code in smart form

    Hi All,
       I have a issue on Smart form . the smart form is customized view of bbp_po(srm) for po(purchase order) details  in that in a secoundary window where vedor adress is displaying .In the first line of the address name1 and name2 are displaying now my need is if the name1+name2 is more than 47 chars then i need  to shift name2 to next line how can i do this dynamic code plase i need it urgently .
    Thanks
    channu sajjanar

    Hi
    Write code yto count the no of character, if it is more than 47 then display NAME2 in second line else write in first line.
    for second line put conditionin text element  NAME2 <> space.
    This will work
    Thanks
    Shiva

  • Text issue in Smart form

    Hi All,
    I have an Custom smart form, and under the pages and windows i have 2 Pages First Page and Next page.
    The First Page  next page is set as Next Page and the second page next page is also set as Next page.
    Now when the Smart form is displayed in the PDF Format then only the first page Header comes in the proper way but the 2nd , 3rd and so on pages depending upon the data the Headers are all coming as an Junk text (Not some other language but the overlapping of characters).
    The Header texts are all in the Table in the header field and also some texts are dynamically populated by the OTR and some are static.
    I am not sure why is this happening can any one give me some inputs?
    Regards,
    Dipu

    Exactly thats what i am using now but want to know whether is it possible by using TEXT instead of creating Graphics node.
    In graphics we can use both .bmp as well as .tif files but not text.So what is the solution of using TEXT Ids in Smart forms.
    Thanks for all your answers but still i didn't get the solution to my problem.
    Regards,
    Chandra

  • How to display the text as a Bold in the Text Element of a Smart Form

    Hi,
    I created one Smart Form.
    In that i created the Text element.
    I provide some data also in that.
    It is coming as a MS WORD.
    I executed my smart form.
    Customer Number:  &WA_KNA1-KUNNR&
    it display the data of the particular customer.
    But i need to display the Customer Number as BOLD or else Increase the Size.
    For this also I created one SMARTSTYLE.
    In that I created the Paragraph and Character Formats also.
    Now i assignee that SMARTSTYLE in the Output Option Tab of the Text Element also.
    But i unable to get the CUSTOMER NUMBER in Bold.
    In MS WORD we have BOLD button.
    I selected the Text and Press the BOLD button. At that time it is Highlighted.
    Whenever i press the SAVE Button.
    Then it is not saved with BOLD.
    It is coming in Normal Format.
    In the ECC 6.0.  I am unable to get the Text as a BOLD.
    This text Element is like a MS WORD.
    Can you please tell me how to display the Data with BOLD. please tell me. I am unable to get that one.
    Thank You.
    Regards,
    B. Krishna.

    Hi,
    Check where u have given BOLD. In character Format or in Paragraph format.
    In SMART FORM,
    1. Change to OLD EDITOR if u are confused with the new one.
            (This can be done by clicking the button left to new editor ).
    2. If it is PARAGRAPH FORMAT,
               Give the name of paragraph format in the editor.
                P1         &WA_KNA1-KUNNR&
        If it is CHARACTER FORMAT,
                             <C1> &WA_KNA1-KUNNR&
    Thanks,
    Nithya.

  • Creation of Smart Forms for PDF

    Hi All,
    I am new to SFP. So, please tell me how to create Smart Forms for PDF.
    I already have an SAP standard form of Customer Invoice in this format (SFP) and I need to change the layout and add some additional fields in it as well.
    Please guide me through the process. Earliest reponse will be highly appreciated.
    Regards,
    Shabbar

    Hi,
    I take that you meant PDF Forms in SAP.
    Refer the following help links.
    http://help.sap.com/saphelp_nw04s/helpdata/en/dc/f1783fe3263042e10000000a114084/content.htm
    This PDF link (Has got many Pdf files)
    https://www.sdn.sap.com/irj/sdn/interactiveforms?rid=/webcontent/uuid/d1088b7e-0c01-0010-c78e-984c0537e3ec [original link is broken]
    Also check this Tech-ed 06 session at Amsterdam.
    http://www.sapteched.com/emea/edu_sessions/session.htm?sid=317
    Check this download from SDN.
    https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/2dd3dbcd-0401-0010-55b8-b10808ff688e
    Is this you are looking for?
    Feel free to revert back.
    --Ragu

Maybe you are looking for