How to use Types structure in smartform layout

Hi Experts,
i have a requirement in smartforms. i have a z-structure having some fields. those fields
should be in the smartform output when we run the print program. This is working fine.
But i need to add 2 more fields to the existing z-structure. For this, i created a types
structure in the print program and added the 2 new fields and created internal tables from
that structure.
My question is how to pass this types strucure to the smartform layout. i tried to add the
structure in the tables option of the form interface.
I get the error "Form Interface - Only table types may be used as the reference type for a table parameter".
i also tried to declare the types structure. Please advise.

Hi,
you create structure in se11 and select structure radio button.
In the smart form give like as
Form interface---->tables (tab)
parameter name ---I_FINAL(inernal table)
type assignment---LIKE
Associated type---ZXXXXX (structure name) 
For declarations of workarea:
Global definitons----->Global data
Variable name----WA_FINAL
Type assignment---TYPE
Associated type---ZXXXXX
you declared as of above
I hope it will helpful you
Regards
Bhupal

Similar Messages

  • HOW TO USE PERFORM STATEMENT IN SMARTFORMS

    Hi,
    Can anyone tell me how to use call subroutine in smartform?
    Thanks & Regards,
    Gauarv.

    Hi,
    Hope this helps you..
    You can use the PERFORM command to call an ABAP subroutine
    (form) from
    any program, subject to the normal ABAP runtime
    authorization
    checking. You can use such calls to subroutines for
    carrying out
    calculations, for obtaining data from the database that is
    needed at
    display or print time, for formatting data, and so on.
    PERFORM commands, like all control commands, are executed
    when a
    document is formatted for display or printing.
    Communication between a
    subroutine that you call and the document is by way of
    symbols whose
    values are set in the subroutine.
    The system does not execute the PERFORM command within
    SAPscript
    replace modules, such as TEXT_SYMBOL_REPLACE or
    TEXT_INCLUDE_REPLACE.
    The replace modules can only replace symbol values or
    resolve include
    texts, but not interpret SAPscript control commands.
    Syntax in a form window:
    /: PERFORM <form> IN PROGRAM <prog>
    /: USING &INVAR1&
    /: USING &INVAR2&
    /: CHANGING &OUTVAR1&
    /: CHANGING &OUTVAR2&
    /: ENDPERFORM
    INVAR1 and INVAR2 are variable symbols and may be of any of
    the four
    SAPscript symbol types.
    OUTVAR1 and OUTVAR2 are local text symbols and must
    therefore be
    character strings.
    The ABAP subroutine called via the command line stated
    above must be
    defined in the ABAP report prog as follows:
    FORM <form> TABLES IN_TAB STRUCTURE ITCSY
    OUT_TAB STRUCTURE ITCSY.
    ENDFORM.
    The values of the SAPscript symbols passed with /: USING...
    are now
    stored in the internal table IN_TAB . Note that the system
    passes the
    values as character string to the subroutine, since the
    field Feld
    VALUE in structure ITCSY has the domain TDSYMVALUE (CHAR
    80). See the
    example below on how to access the variables.
    The internal table OUT_TAB contains names and values of the
    CHANGING
    parameters in the PERFORM statement. These parameters are
    local text
    symbols, that is, character fields. See the example below
    on how to
    return the variables within the subroutine.
    From within a SAPscript form, a subroutine GET_BARCODE in
    the ABAP
    program QCJPERFO is called. Then the simple barcode
    contained there
    ('First page', 'Next page', 'Last page') is printed as
    local variable
    symbol.

  • How to use standard texts in smartforms

    Hi Friends,
          How to use standard texts in smartforms, ie in scripts we are using standard texts using tr so10.
    thanks in advance,
    regards,
    sharma.

    For long text
    method1
    Create TEXT node- general attributes change text type to include text
    then you can input text name/text object/text id/language
    method2
    create PROGRAM LINE node - use FM READ_TEXT to read it to a internal table
    then use LOOP or TABLE node to display it
    For TEXT module(For foreign language)
    Tr-code:smartforms -- choose Text module(not choose form)--create a text module object
    then enter smartform Create TEXT node- general attributes change text type to text module
    input the text module name which created by above
    btw SO10 is just for Scriptform, in smartforms we use text module to replace SO10

  • How to use a structure at run time....

    Hi gurus,
    I am confused on how to use the structure in our report..why do we need it...Please help me with that...
    Thanks
    Cheers:Jim

    Or you could simply use a structure in your program to group like fields together.  So that you could maybe clear them all at one shot.
    For example, say that you have a structure with fields a - z.
    data: begin of structure,
            fielda type c,
            fieldb type c,
            fieldc type c,
            fieldz type c,
            end of structure.
    So in your program, it is now important for you to clear these fields, if you would have defined them one by one without the structure, you would have to list them all in your CLEAR statement, but instead, since you have them in a structure, you can some say....   CLEAR STRUCTURE.
    Regards,
    Rich Heilman

  • How can I type "š" with english keyboard layout?

    I was wondering if somewho can tell me, how I can type "š" with englis keyboard layout, because when I have restart iMac, layout was changed back to english (from Slovak) and now I cant start Mac OS X, cause in my login is "š"

    Start with  the Apple menu in the upper left of the Menu Bar and select System Preferences. On the System Preferences pane on the top row is the UN flag icon. For Tiger (OS-X 10.4) it was called "International". Click to take you to the Language Options:
    The sub-menu called "Input Sources" (as you can see from the above screen shot) will take you to the panel that I referred to in the previous response. If you don't find your language listed then click on the "Edit List at the bottom left of the "Language" sub-menu. Once you make a change in either one of these places you will be given a notice to tell you that the change will be reflected the next time you restart your Mac or the next time that you log in to your account. If you are the only user and do not have another account on your Mac then the restart option will be your method. There is no need to do this procedure from the install DVD.

  • How to use HTML Tags in Smartforms

    Hi,
    Can you please help me out in knowing how to use HTML tags in Smartforms,
    suppose i want to display some text in BOLD i should use the tag </b> as shown
    </b>  Header Information <b>
    regards
    Ranveer

    Hi Ranveer ,
        check this following links,
      hope this wil helps you
    <a href="http://sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/abap%20code%20samples/smartforms/smartform%20in%20abap.pdf">check this link,to know abt HTML in smartforms</a>
    rgds,
    shan

  • How to use the structure in the EXIT_SAPMM06E_013 function module

    Hello Experts,
    Please guide me how to use the structure defined in function modules under  table tab in the driver program for smart form to fetch the data. Please post some sample code if available.
    Best Regards,
    Sandesh.Sreyamsh

    Can you please elaborate little bit more what is the actual requirement?

  • How to use "Reference Structure" setting in analysis grid item

    Hello expert,
            in Bex analyzer, how to use "Reference Structure" setting in analysis grid item by example?
    Many thanks,

    The variable needs assigned a value, that's why you're getting prompted. When you execute the statement, it's not executing the variable and exec lines.
    Having script output available in a grid would be an enhancement request.

  • How to use TYPE addition with the OPEN DATASET ?

    Hi,
    How to use TYPE addition with the OPEN DATASET and what is the use ?
    For Example:
    OPEN DATASET 'test.dat'
      TYPE 'lrecl=80, blksize=8000, recfm=FB'
      FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
    Also, if I wish to do the same for a .CSV file how can we do it.
    Thanks,
    -Sid

    Hi,
    OPEN DATASET 'test.dat'
      TYPE 'lrecl=80, blksize=8000, recfm=FB'
      FOR OUTPUT IN TEXT MODE ENCODING DEFAULT
    For more information press F1 on OPEN DATASET.
    Thanks

  • How to use event structure of event data nodes event filter nodes in programming

    hi,
    I need manual of how to use 'event structure' events of 'event data nodes' and 'event data filters'...please help me....
    Regards
    Ravindranath

    I'm not really sure what you are looking for here.  Did you do a search in the LabVIEW help for Event Structure?
    The Event Data Node just returns information about the event, like control data, control reference, what caused the event, etc.
    The Event Data Filters are just used in Filter Events.  This allows you to discard an event or change the data that the event will recieve.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • How to use type cast change string to number(dbl)?can it work?

    how to use type cast change string to number(dbl)?can it work?

    Do you want to Type Cast (function in the Advanced >> Data Manipulation palette) or Convert (functions in the String >> String/Number Conversion palette)?
    2 simple examples:
    "1" cast as I8 = 49 or 31 hex.
    "1" converted to decimal = 1.
    "20" cast as I16 = 12848 or 3230 hex.
    "20" converted to decimal = 20.
    Note that type casting a string to an integer results in a byte by byte conversion to the ASCII values.
    32 hex is an ASCII "2" and 30 hex is an ASCII "0" so "20" cast as I16 becomes 3230 hex.
    When type casting a string to a double, the string must conform the the IEEE 32 bit floating point representation, which is typically not easy to enter from the keyboard.
    See tha attached LabView 6.1 example.
    Attachments:
    TypeCastAndConvert.vi ‏34 KB

  • How to use a structure in CAF entity service

    Hi All
    I want to use a structure as datatype of a complex attribute in a CAF entity service. I tried to use a dictionary structure created in the dictionary part
    of the CAF project and added it to the public part of this DC.But I can't find it in the list of data structures while trying to mention datatype for a complex attribute in an entity service. Can any body suggest how to do it.
    Cheers
    Sudip

    Hello Sudip,
    You can create a complex structure by doing the following:
    1.  From the Attributes Tab, right click on your Entity and select "Create Attribute"
    -  Enter an attribute name and description
    -  select "Complex Attribute" checkbox
    -  select "Finish"
    2.  Right click on the newly created complex attribute and select "Create Sub Attribute".  Do this for each attribute in your structure.
    This complex structure can now be used in your CAF application and also CAF UI patterns.
    Creating complex attributes from the data dictionary is only usually used for creating enumeration types.  When doing this, you have to use the CAF enumeration editor to populate the values.  The "How to guide" that Jan refers to describes this.
    Regards,
    Austin.

  • SRM 7.0 BADI Define Agents-- How to use type /sapsrm/t_wf_area_entity

    Hi Experts,
    I'm using SRM 7.0. When implementing BADI /SAPSRM/BADI_DET_AG (Define the agents of  procsess controlled workflow), I created the sub-class of interface /SAPSRM/IF_WF_AREA to develop my won logic in method GET_RESPONSIBLE_APPROVERS.
    I want use the data in workflow container, seems the method GET_AREA_ENTITY_IDS of /SAPSRM/IF_WF_AREA  can provide a pointer which type is /sapsrm/t_wf_area_entity and point workflow area.
    My question is how to use this pointer (or how to use the type /sapsrm/t_wf_area_entity )? Many thanks.
    PS. I found some example code delivered by sap, but i want know the full structure which /sapsrm/t_wf_area_entity point. Below code for your reference:
    METHOD /sapsrm/if_wf_area~get_responsible_approvers.
      DATA lt_area_entity_id TYPE /sapsrm/t_wf_area_entity_id.
      DATA lr_area_entity_id TYPE REF TO /sapsrm/wf_area_entity_id.
      DATA ls_actor_id       TYPE swhactor.
      DATA lt_approver       TYPE /sapsrm/t_wf_approver.
      FIELD-SYMBOLS: <ls_agent_id> TYPE /sapsrm/s_wf_approver.
      lt_area_entity_id = me->/sapsrm/if_wf_area~get_area_entity_ids( ).
      LOOP AT lt_area_entity_id REFERENCE INTO lr_area_entity_id.
        ASSIGN lr_area_entity_id->* TO <ls_agent_id> CASTING.
        TRY.
            ls_actor_id-otype = <ls_agent_id>-approver_ot.
            ls_actor_id-objid = <ls_agent_id>-approver_id.
            lt_approver = /sapsrm/cl_wf_config_user=>get_manager_list( ls_actor_id ).
            APPEND LINES OF lt_approver TO rt_approver.
          CATCH /sapsrm/cx_wf_error /sapsrm/cx_wf_abort.
            CONTINUE.
        ENDTRY.
      ENDLOOP.
    ENDMETHOD.

    Hi Darcy,
    You can also use FM SAP_WAPI_READ_CONTAINER to read workflow container values.
    Please state if you have some other specific requierment.
    Regards,
    Saumya

  • How to use new page in smartforms

    hello friends,
                       i am using a smartform in which i have created a new page(page 2) ,in my page1 i have made next page as page2 ,but in page2 i cant make next page as page2 bocz page2 does not have main window,so in page2 i have made next page as page1 only.
    im not gettin any errors,but only page1 is been displayed,no page2 is displayed,can any1 pls tell me how to use an additional page in a smartform

    hi Siddhesh,
    there is simple method to do so.
    1. Your first page say 'PAGE_1' 'with main window is ready. This page points  
        to say 'PAGE_2' as next page. till here its ok.
    2. Now on second page i.e 'PAGE_2'  do the following.
            a. Copy main windown from 'PAGE_1' ( select node 'PAGE_1 -> right click -
                 -->copy ')
            b. Paste the same main window in 'PAGE_2' ( select node 'PAGE_2' -> right
                click -> paste).
            c. Set next page for 'PAGE_2' as 'PAGE_2'. (SAP will allow this)..
    Thats it u r done.... save activate and test... now your main window on page 1 is filled .. it will display content on page 2 and then on page 3 which is of type page 2...because for page 2 we have set next page as page 2..
    Hope this helps you..
    Let us know if u have any problem...
    Enjoy SAP.
    Pankaj Singh.

  • How to use XDOXSLT in rtf template layout for etext template creation

    <DEFINE CONCATENATION>     BookDetails
    <BASE LEVEL>     Category
    <ELEMENT> Name || '/' || Price     
    <DELIMITER>      '/'
    <END DEFINE CONCATENATION>     BookDetails
    With EFTProcessor the above details are created in xsl file as follows
    <xsl:template name="CONCAT_BookDetails">
    *I need to declare one more variable here
    EG: <xsl:value-of select="xdoxslt:set_variable($mycount, count(.//Category))"/>
    --and use this variable for any dyanamic process inside this template. How to achieve this in rtf template by declaring a xdoxslt function. How to declare this
    syntax in rtf layout so that it creates a varibale in xsl template using the EFTProcessor. Please help me out. The main point here is to include xslt functions in
    rtf template layout for etext template creation.*
    <xsl:for-each select=".//Category">
    <xsl:call-template name="CONCAT_BookDetails_V"/>
    </xsl:for-each>
    </xsl:template>

    in the next time use BI Publisher forum - BI Publisher
    <?format-number(ENTERED_CR,'##,##0.00')?>it's works for me
    output:
    444    ->  444.00
    444.55 ->  444.55

Maybe you are looking for