User exit function module include how to write the code

hi all,
i am creating user exit  for ME22N  using this enhance  MM06E005 .
in this i created subscreen and set some fields .
that data has to be stoe in EKPO.
inside the include i have to write the logic plz guide me how to follow .
once i enter it will store on wish internal table and wish internal table to shall i move to EKPO .
If Tcode is ME23N how to display data in disable mode.
Regards,
Hari.

This is the code inside the function module .
once i enter data in custom field the below wish table it will store.
FUNCTION EXIT_SAPMM06E_016.
""Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(I_EKPO) LIKE  EKPO STRUCTURE  EKPO
*"     VALUE(I_AKTYP)
*"     VALUE(I_CI_EKPO) LIKE  EKPO_CI STRUCTURE  EKPO_CI
*"     VALUE(I_BSTYP) LIKE  EKKO-BSTYP
*"     VALUE(I_NO_SCREEN)
*"     VALUE(I_LFA1) LIKE  LFA1 STRUCTURE  LFA1
*"     VALUE(I_LFM1) LIKE  LFM1 STRUCTURE  LFM1
*"     VALUE(I_EKKO) LIKE  EKKO STRUCTURE  EKKO
*"     VALUE(I_REKPO) LIKE  EKPO STRUCTURE  EKPO OPTIONAL
*"     VALUE(I_KEKPO) LIKE  EKPO STRUCTURE  EKPO OPTIONAL
*"     VALUE(I_AEKPO) LIKE  EKPO STRUCTURE  EKPO OPTIONAL
*"     VALUE(I_REBAN) LIKE  EBAN STRUCTURE  EBAN OPTIONAL
*"     VALUE(I_MT06E) LIKE  MT06E STRUCTURE  MT06E OPTIONAL
*"     VALUE(I_EINA) LIKE  EINA STRUCTURE  EINA OPTIONAL
*"     VALUE(I_EINE) LIKE  EINE STRUCTURE  EINE OPTIONAL
*"     VALUE(I_EKPO_OLD) LIKE  EKPO STRUCTURE  EKPO OPTIONAL
*"     VALUE(I_KOMP) LIKE  KOMP STRUCTURE  KOMP OPTIONAL
*"     VALUE(I_ENJ_CALL) OPTIONAL
*"  TABLES
*"      TEKPO STRUCTURE  BEKPO OPTIONAL
*"      TEKET STRUCTURE  BEKET OPTIONAL
*"      TEKKN STRUCTURE  EKKNU OPTIONAL
*"      TKOMV STRUCTURE  KOMV OPTIONAL
INCLUDE ZXM06U41 .
ENDFUNCTION.
inside the INCLUDE ZXM06U41 .  i writen this code
*&  Include           ZXM06U41
DATA :
      FS_EKPO TYPE EKPO_CI.
IF ( SY-TCODE EQ  'ME22N' OR SY-TCODE EQ 'ME23N'
      OR SY-TCODE EQ 'ME22' OR SY-TCODE EQ 'ME23' ) .
  LOOP AT TEKPO.
   IF ( TEKPO-EBELN EQ i_EKPO-EBELN
        AND TEKPO-EBELP EQ i_EKPO-EBELP ) .
    EKPO_CI-ZMATERIAL = TEKPO-ZMATERIAL.
    EKPO_CI-ZQUANTITY = TEKPO-ZQUANTITY.
    EKPO_CI-ZUNIT     = TEKPO-ZUNIT.
    EKPO_CI-ZPRICE    = TEKPO-ZPRICE.
    EKPO_CI-ZCURRENCY = TEKPO-ZCURRENCY.
   ENDIF.
  ENDLOOP.
ENDIF.
Regards,
Hari.

Similar Messages

  • User exit /function module include in WM : how to write the code

    Hi all,
    I would like when TO creation in WM the field Queue (LTAK-QUEUE) to take a specific value
    I found the user exit MWMTO001  Enhancements for end of transfer order generation .
    First is it the correct user exit  for this purpose?
    Then as  I have to write the logic pls guide me how to follow .
    FOR A SPECIFIC WAREHOUSE NBR  
    IF LTBK- BETYP  = J ( Kanban/JIT)
    THEN  LTAK-QUEUE = F_PICK_RF
    Regards,
    Cadanj

    Hi,
    First of all, thanks for your answer.
    However I found the fied QUEUE (LRF_QUEUE) in the structure LTAP_VB (Transmission structure LTAP + LTAP1 for update task).
    So I suppose that this field can be updated, can it?
    Thanks for your feedback.
    Cadanj

  • BAPI , BADI , USER EXIT , FUNCTION MODULE

    Hi Experts
    Can any body pls explain me abt BAPI , BADI , USER EXIT , FUNCTION MODULE  and its uses in details .
    Thanks
    Devashish

    Dear Deba,
    Functional Module:Procedure that can only be defined in function groups and outside of classes. Can be called from all
    programs. Begins with FUNCTION and ends with ENDFUNCTION. Is maintained using the Function Builder of the ABAP
    Workbench.
    Functional Module can be checked using T Code SE37 for a package ,say in standard SAP CS15 will be used for checking
    the where used list for a material and here it can be checked only for one material,in case if we want to check for a list of
    materials a small report can be developed using the fucntional modules like
    CSEP_MAT_BOM_SELECT_WHERE_USED   API Bills of Material: Select BOM(s) (or)
    CS_WHERE_USED_MAT                Bills of material; where-used list
    User Exit:A point in an SAP program where a customer's own program can be called.
    In contrast to customer exits, user exits allow developers to access and modify program components and data objects in the
    standard SAP System. On upgrade, each user exit must be checked to ensure that it conforms to the standard system.
    There are the following types of user exit:
    User exits that use INCLUDEs - These are customer enhancements that are called directly in the program.
    User exits that use tables - these are used and managed using Customizing.
    User Exits can be viewed or checked using the T Code SMOD and using CMOD an user exit will be activated.
    BAdi:
    A template for BAdI objects.
    Business Add-Ins (BAdIs) are the basis for enhancements where BAdI methods in object plug-ins can be called from ABAP
    programs. The calling program controls which BAdI implementations are used by specifying filter values. A BAdI consists of a
    BAdI interface, a set of filters and some settings.
    From Release 7.0, BAdIs are edited in the Enhancement Builder and reside in the global class namepsace. You can switch on
    their implementations via the Switch Framework.
    There are also classic BAdIs, which are edited in the BAdI-Builder and superseded function module exits in Release 4.6.
    Related T Code SE18.
    Regards
    Mangalraj.S

  • Badi's, user exits, function modules and reports

    Hi all,
    Can anybody tell me the exact diff among Badi's, user exits, function modules and reports? I mean what are their functions?
    thanks

    Hi,
         This is a beginners question,but still you can check the below links.
    BAdis:
    Regarding Enhancements/User-Exits in ABAP
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/ee/a1d548892b11d295d60000e82de14a/content.htm
    http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/779183#
    FM:
    http://help.sap.com/saphelp_nw70/helpdata/en/9f/db988735c111d1829f0000e829fbfe/content.htm
    Reports:
    http://it.toolbox.com/wiki/index.php/How_many_types_of_reports_are_there_in_ABAP_and_what_is_the_difference_between_them%3F
    Regards,
    saurabh

  • Dynamic Call --- User Exit/Function Module

    Hi All,
    We have a User Exit/Function Module which is called dynamically. This is configured and we are missing its configuration path. Could any of you guys let me know more details where this configuration could reside ?
    Thanks much
    Raghu

    Hi,
    When this function module CALL FUNCTION LT_TRWPR-FUNCTION is called, it automatically goes into a Z_XXXXXXXXX function module.
    This function module is called in all transactions where financial postings could happen, however to be precise i would say at the time of Vendor invoice postings.
    Eg: Tcodes MIRO, FB60.
    Thanks
    Raghu Kolla

  • Report, back ground job, user exit, function module used

    I have more than 100 Z program and report painter program, user exit, function module for one country, inside this country, there are many company code, for a specific company code, I want to know which Z program/CMOD user exit/function module/back groundjob is used in this company code, any table or transaction can do?
    also can we find all z tables used in this company code?

    May be this url can help you http://it.toolbox.com/wiki/index.php/Find_data_in_your_SAP_system_and_know_which_tables_do_what

  • How to write the code to send the report output to the local file.

    dear all,
    how to write the code to send the report output to the local file.
    Thanks & Regards,
    Jyothi.

    Hi,
    Try this , it will display report and download the file as well. Just vhange the path and execute
    TYPE-POOLS : SLIS.
    DATA : IT_SCARR TYPE TABLE OF SCARR,
           IT_FCAT  TYPE SLIS_T_FIELDCAT_ALV.
    SELECT *
    FROM SCARR
    INTO TABLE IT_SCARR.
    CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
    EXPORTING
    *   I_PROGRAM_NAME               =
    *   I_INTERNAL_TABNAME           =
        I_STRUCTURE_NAME             = 'SCARR'
    *   I_CLIENT_NEVER_DISPLAY       = 'X'
    *   I_INCLNAME                   =
    *   I_BYPASSING_BUFFER           =
    *   I_BUFFER_ACTIVE              =
      CHANGING
        CT_FIELDCAT                  = IT_FCAT
    * EXCEPTIONS
    *   INCONSISTENT_INTERFACE       = 1
    *   PROGRAM_ERROR                = 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 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    *   I_INTERFACE_CHECK              = ' '
    *   I_BYPASSING_BUFFER             =
    *   I_BUFFER_ACTIVE                = ' '
    *   I_CALLBACK_PROGRAM             = ' '
    *   I_CALLBACK_PF_STATUS_SET       = ' '
    *   I_CALLBACK_USER_COMMAND        = ' '
    *   I_STRUCTURE_NAME               =
    *   IS_LAYOUT                      =
       IT_FIELDCAT                    = IT_FCAT
    *   IT_EXCLUDING                   =
    *   IT_SPECIAL_GROUPS              =
    *   IT_SORT                        =
    *   IT_FILTER                      =
    *   IS_SEL_HIDE                    =
    *   I_DEFAULT                      = 'X'
    *   I_SAVE                         = ' '
    *   IS_VARIANT                     =
    *   IT_EVENTS                      =
    *   IT_EVENT_EXIT                  =
    *   IS_PRINT                       =
    *   IS_REPREP_ID                   =
    *   I_SCREEN_START_COLUMN          = 0
    *   I_SCREEN_START_LINE            = 0
    *   I_SCREEN_END_COLUMN            = 0
    *   I_SCREEN_END_LINE              = 0
    *   IR_SALV_LIST_ADAPTER           =
    *   IT_EXCEPT_QINFO                =
    *   I_SUPPRESS_EMPTY_DATA          = ABAP_FALSE
    * IMPORTING
    *   E_EXIT_CAUSED_BY_CALLER        =
    *   ES_EXIT_CAUSED_BY_USER         =
      TABLES
        T_OUTTAB                       = IT_SCARR
    * EXCEPTIONS
    *   PROGRAM_ERROR                  = 1
    *   OTHERS                         = 2
    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 METHOD CL_GUI_FRONTEND_SERVICES=>GUI_DOWNLOAD
      EXPORTING
    *    BIN_FILESIZE              =
        FILENAME                  = 'C:\Documents and Settings\sap\Desktop\Hi.xls' " Change path
    *    FILETYPE                  = 'ASC'
    *    APPEND                    = SPACE
    *    WRITE_FIELD_SEPARATOR     = SPACE
    *    HEADER                    = '00'
    *    TRUNC_TRAILING_BLANKS     = SPACE
    *    WRITE_LF                  = 'X'
    *    COL_SELECT                = SPACE
    *    COL_SELECT_MASK           = SPACE
    *    DAT_MODE                  = SPACE
    *    CONFIRM_OVERWRITE         = SPACE
    *    NO_AUTH_CHECK             = SPACE
    *    CODEPAGE                  = SPACE
    *    IGNORE_CERR               = ABAP_TRUE
    *    REPLACEMENT               = '#'
    *    WRITE_BOM                 = SPACE
    *    TRUNC_TRAILING_BLANKS_EOL = 'X'
    *  IMPORTING
    *    FILELENGTH                =
      CHANGING
        DATA_TAB                  = IT_SCARR
    *  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
    *    NOT_SUPPORTED_BY_GUI      = 22
    *    ERROR_NO_GUI              = 23
    *    others                    = 24
    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 METHOD CL_GUI_FRONTEND_SERVICES=>EXECUTE
      EXPORTING
        DOCUMENT               = 'C:\Documents and Settings\sap\Desktop\Hi.xls' "Change path
    *    APPLICATION            =
    *    PARAMETER              =
    *    DEFAULT_DIRECTORY      =
    *    MAXIMIZED              =
    *    MINIMIZED              =
    *    SYNCHRONOUS            =
    *    OPERATION              = 'OPEN'
    *  EXCEPTIONS
    *    CNTL_ERROR             = 1
    *    ERROR_NO_GUI           = 2
    *    BAD_PARAMETER          = 3
    *    FILE_NOT_FOUND         = 4
    *    PATH_NOT_FOUND         = 5
    *    FILE_EXTENSION_UNKNOWN = 6
    *    ERROR_EXECUTE_FAILED   = 7
    *    SYNCHRONOUS_FAILED     = 8
    *    NOT_SUPPORTED_BY_GUI   = 9
    *    others                 = 10
    IF SY-SUBRC <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

  • How to write the code?

    Hi,
    I have a internal table T. when the t-zuonr is blank, the ALV look like:
    t-zuonr                     document no       data
                              200630303  AB  2007.08.31
                              200627855  AB  2007.06.30
                              200627887  AB  2007.06.30
    MSFT047/07         93631164   RV  2007.10.19
    MSFT061/07         93594484   RV  2007.10.09
    MSFT061/07         93594485   RV  2007.10.09
    MSFT061/07         93594486   RV  2007.10.09
    MSFT061/07         93594487   RV  2007.10.09
    MSFT061/07         93594488   RV  2007.10.09
    MSFT061/07         93594489   RV  2007.10.09
    MSFT061/07         93594490   RV  2007.10.09
    *I need to not show the company which t-zuonr is space.
    How can I write the code?*
    The original source code is as following:
    SORT t.
      LOOP AT t.
        AT NEW bukrs.
          CLEAR anz_dl.
          CLEAR htext-anzahl.
          CLEAR htext-datei.
          htext-text1 = ' records writen in file '.
          CLEAR p_pfad.
          CONCATENATE
              i_pfad
              'CU_CC'
              t-bukrs
              sy-datum+6(2)
              sy-datum+4(2)
              sy-datum(4)
              sy-uzeit
              '.txt'
         INTO p_pfad.
          CLEAR outtab.
          REFRESH outtab.
          REFRESH: gt_outalv.                                  "INS MG020207
        ENDAT.
       IF t-shkzg = 'H'.
         h_betrg  = t-wrbtr * -1.
       ELSE.
        h_betrg  = t-wrbtr.
        h_dmbtr  = t-dmbtr.
       ENDIF.
        s-filler1 = s-filler2 = s-filler3 = s-filler4 = s-filler5 = ';'.
        s-filler6 = s-filler7 = s-filler8 = ';'.
        s-filler9 = s-filler10 = s-filler11 = s-filler12 = s-filler13 = ';'.
        s-filler14 = ';'.
        s-belnr = t-belnr.
        IF t-xblnr NE space.                                    "WD041005a
          s-xblnr      = t-xblnr.                               "WD041005a
        ELSE.                                                   "WD041005a
          s-xblnr      = t-belnr.                               "WD041005a
        ENDIF.                                                  "WD041005a
        WHILE s-xblnr(1) EQ '0'.                            "INS MG130606
          SHIFT s-xblnr LEFT.                               "INS MG130606
        ENDWHILE.                                "INS MG130606
    *<<< CR01 CHANGE START BY LI_Y 2008/01/10
        IF t-waers = 'JPY'.
        h_dmbtr = h_dmbtr.
        else.
        h_dmbtr = h_dmbtr * 100.
        endif.
    *>>> CR01 CHANGE END BY LI_Y 2008/01/10
        WRITE t-kunnr TO s-kunnr NO-ZERO.
        s-lifn2 = s-kunnr.
        shift s-lifn2 RIGHT.
        s-lifn2(1) = 'R'.
      S-KUNNR = T-KUNNR+5(5).
        s-bldat+2(1) = '/'.
        s-bldat+5(1) = '/'.
        s-bldat0(2) = t-bldat4(2).
        s-bldat3(2) = t-bldat6(2).
        s-bldat6(4) = t-bldat0(4).
        s-budat+2(1) = '/'.
        s-budat+5(1) = '/'.
        s-budat0(2) = t-budat4(2).
        s-budat3(2) = t-budat6(2).
        s-budat6(4) = t-budat0(4).
        s-netdt+2(1) = '/'.
        s-netdt+5(1) = '/'.
        s-netdt0(2) = t-netdt4(2).
        s-netdt3(2) = t-netdt6(2).
        s-netdt6(4) = t-netdt0(4).
        s-waers      = t-waers.
        s-dmbtr      = t-dmbtr.
        s-sgtxt      = t-sgtxt.
        CLEAR s-twaer.
        SELECT SINGLE waers INTO s-twaer
                            FROM t001
                            WHERE bukrs = t-bukrs.
        IF h_betrg < 0.
          hs_betrg+0(1) = '-'.
        ELSE.
          hs_betrg+0(1) = ' '.
        ENDIF.
        WRITE h_betrg CURRENCY t-waers TO hs_betrg+1 NO-GROUPING
                                                        NO-SIGN
                                                        LEFT-JUSTIFIED.
        REPLACE ',' WITH '.' INTO hs_betrg.
        WRITE hs_betrg TO s-betrg.
        IF h_dmbtr < 0.
          hs_betrg+0(1) = '-'.
        ELSE.
          hs_betrg+0(1) = ' '.
        ENDIF.
        WRITE h_dmbtr CURRENCY t-waers TO hs_betrg+1 NO-GROUPING
                                                        NO-SIGN
                                                        LEFT-JUSTIFIED.
        REPLACE ',' WITH '.' INTO hs_betrg.
        WRITE hs_betrg TO s-dmbtr.
        s-compcode   = t-bukrs.                                 "fw070905
        IF p_downl = 'X'.
          MOVE s TO outtab-s.
          APPEND outtab.
          ADD 1 TO anz_dl.
        ENDIF.
        gs_outalv-belnr = s-belnr.                             "INS MG020207
    *<<<< CR01 START CHANGE BY LI_Y 2007/12/24      " ADD as_outalv-zuonr
        gs_outalv-zuonr = s-zuonr.                             "CR01
    *>>>> CR01 EDD CHANGE BY LI_Y 2007/12/24         "ADD as_outalv-zuonr
        gs_outalv-kunnr = s-kunnr.                             "INS MG020207
        gs_outalv-bldat = s-bldat.                             "INS MG020207
        gs_outalv-netdt = s-netdt.                             "INS MG020207
        gs_outalv-betrg = s-betrg.                             "INS MG020207
        gs_outalv-waers = s-waers.                             "INS MG020207
        gs_outalv-compcode = s-compcode.                       "INS MG020207
        gs_outalv-budat = s-budat.                             "INS MG020207
        gs_outalv-sgtxt = s-sgtxt.
        gs_outalv-kmmnt = s-kmmnt.
        gs_outalv-vbeln = s-vbeln.
        gs_outalv-xblnr = s-xblnr.
        gs_outalv-lifn2 = s-lifn2.
        gs_outalv-dmbtr = s-dmbtr.
        gs_outalv-twaer = s-twaer.
        APPEND gs_outalv TO gt_outalv.                         "INS MG020207
        AT END OF bukrs.
          WRITE anz_dl  TO htext-anzahl.
          WRITE p_pfad  TO htext-datei.
          CONDENSE htext.
    *<<<< CR01 START CHANGE BY LI_Y 2007/12/24
    WA_SORT-fieldname = 'BELNR'.     " speicfy field name..
    WA_SORT-UP = 'X'.
    WA_SORT-SUBTOT = 'X'.
    APPEND WA_SORT TO I_SORT.
    Thank you!!

    Hi,
    Do this. Declare another internal table of identical structure as table t say t1.
    REFRESH t1.
    APPEND LINES OF t TO t1.
    DELETE t1 WHERE zuonr IS INITIAL.
    and then use t1 to display the ALV.
    Hope this helps.
    Regards,
    Aditya

  • We create proforma invoice for a sales order.If the object status for the sales order is changed we have to add an output type that is record should be added to NAST table.User exit/Function Module/program .

    Please provide me with a solution

    Q1.  will it charge material price to work order automatically ?
    No you have to go with user exit for this
    Q2.  Unless the business is so specific such that they would like to treat this activity via sales, there is no significance in capturing the activity via SD.  Perhaps, I would say, MM route is more appropriate.
    Q3.  The above holds good.  That you go with MM route.
    G. Lakshmipathi

  • How to write the code for IMPORT and export in Field exit

    Hi,
       Using the FB01 tcode with condition as document type (ZF) and company code
    i want to substitute values should come in the next screen.
          i am passin the document type and the company code in the FB01 initial screen (100) and added field exit for Cost centre.
    if the Doc type ZF and company code is 0245 then the field exit shoul trigger and give the defaul cost centre value if it contain any cost centre valu it over write the existing if it is empty i will write the defauls cost centre value.
    Thanks & Regards,
    Nelsons......

    Hi,
    As i have understood, if ur doc type is ZF and company code is 0245, then you want to pass the value to cost centre field in next screen.
    You can use program RSMODPRF. here enter the data element of cost centre field and assign the screen no and program name (for FI docs prg name would be SAPMF05A).
    After assigning program and screen no , Create the function module where u have to write an 'if' statement for assigning value to cost centre (i.e export field in FM)
    the values for company code and document type can be fetched from their respective parameter  ids i.e. BUK and BAR.
    Regards,
    Seema Jaisinghani

  • How to write the code for a panel when using treeview?

    Hi,
    We are developing a new plug-in in Indesign as based on treeview. we have completed the design part, but we have some doubts in coding..
    One dialog widget and three panels(General, fitting, Eventsandscripts).
    The .fr file:
    resource GeneralPanelWidget (kGeneralPanelResourceID)
              __FILE__, __LINE__,
              kGeneralPanelWidgetID,      // WidgetId
              kPMRsrcID_None,         // RsrcId
              kBindNone,              // Frame binding
              Frame(0,0,800,500)      // Frame
              kTrue,                  // Visible
              kTrue,                  // Enabled
              kGeneralPanelTitleKey,                    // Panel name
                        StaticTextWidget
                                  kInvalidWidgetID,                                                                                // WidgetId (default=0)
                                  kSysStaticTextPMRsrcId,                    // RsrcId
                                  kBindNone,                                                            // Frame binding
                                  10, 15, 138, 35,                                                  // Frame: left, top, right, bottom.
                                  kTrue, kTrue,                                                  // Visible, Enabled
                                  kAlignLeft, kEllipsizeEnd,kTrue,                    // Alignment, ellipsize style
                                  ksamPrefProjectPathStringKey,                    // Initial text.
                                  ksamPrefProjectPathTextEditBoxWidgetID          // No associated widget
                        // TextEditBox Widget resource
                        TextEditBoxWidget
                        ksamPrefProjectPathTextEditBoxWidgetID, // WidgetId
                        kSysEditBoxPMRsrcId, // RsrcId
                        kBindNone, // Frame binding
                        Frame(140, 15, 420, 35), // Frame (l,t,r,b)
                        kTrue, kTrue // Visible, Enabled
                        0, // Widget id of nudge button (0 so we dont get one)
                        0, 0,// small,large nudge amount
                        0, // max num chars(0 = no limit)
                        kFalse,// is read only
                        kFalse,// should notify each key stroke
                        kFalse,// range checking enabled
                        kFalse,// blank entry allowed
                        0, // Upper bounds
                        0, // Lower bounds
                        "", // Initial text
                        ButtonWidget
                                  ksamChooseProjectButtonWidgetID,
                                  kSysButtonPMRsrcId,
                                  kBindNone,
                                  430, 15, 500, 35,
                                  kTrue, kTrue,
                                  ksamChooseBtnStringKey,
                        StaticTextWidget
                                  0,                                                                                // WidgetId (default=0)
                                  kSysStaticTextPMRsrcId,                    // RsrcId
                                  kBindNone,                                                            // Frame binding
                                  10, 45, 138, 65,                                                  // Frame: left, top, right, bottom.
                                  kTrue, kTrue,                                                  // Visible, Enabled
                                  kAlignLeft, kEllipsizeEnd,kTrue,                    // Alignment, ellipsize style
                                  ksamPrefImagePathStringKey,                    // Initial text.
                                  ksamPrefImagePathTextEditBoxWidgetID                    // No associated widget
                        // TextEditBox Widget resource
                        TextEditBoxWidget
                        ksamPrefImagePathTextEditBoxWidgetID, // WidgetId
                        kSysEditBoxPMRsrcId, // RsrcId
                        kBindNone, // Frame binding
                        Frame(140, 45, 420, 65), // Frame (l,t,r,b)
                        kTrue, kTrue // Visible, Enabled
                        0, // Widget id of nudge button (0 so we dont get one)
                        0, 0,// small,large nudge amount
                        0, // max num chars(0 = no limit)
                        kFalse,// is read only
                        kFalse,// should notify each key stroke
                        kFalse,// range checking enabled
                        kFalse,// blank entry allowed
                        0, // Upper bounds
                        0, // Lower bounds
                        "", // Initial text
                        ButtonWidget
                                  ksamChooseImgpathButtonWidgetID,
                                  kSysButtonPMRsrcId,
                                  kBindNone,
                                  430, 45, 500, 65,
                                  kTrue, kTrue,
                                  ksamChooseBtnStringKey,
                        StaticTextWidget
                                  0,                                                                      // WidgetId (default=0)
                                  kSysStaticTextPMRsrcId,                    // RsrcId
                                  kBindNone,                                                            // Frame binding
                                  10, 75, 138, 95,                                                  // Frame: left, top, right, bottom.
                                  kTrue, kTrue,                                                  // Visible, Enabled
                                  kAlignLeft, kEllipsizeEnd,kTrue,                    // Alignment, ellipsize style
                                  ksamPrefMasterTempPathStringKey,                    // Initial text.
                                  ksamPrefMasterTemplatePathTextEditBoxWidgetID                    // No associated widget
                        // TextEditBox Widget resource
                        TextEditBoxWidget
                        ksamPrefMasterTemplatePathTextEditBoxWidgetID, // WidgetId
                        kSysEditBoxPMRsrcId, // RsrcId
                        kBindNone, // Frame 85
                        Frame(140, 75, 420, 95), // Frame (l,t,r,b)
                        kTrue, kTrue // Visible, Enabled
                        0, // Widget id of nudge button (0 so we dont get one)
                        0, 0,// small,large nudge amount
                        0, // max num chars(0 = no limit)
                        kFalse,// is read only
                        kFalse,// should notify each key stroke
                        kFalse,// range checking enabled
                        kFalse,// blank entry allowed
                        0, // Upper bounds
                        0, // Lower bounds
                        "", // Initial text
                        ButtonWidget
                                  ksamChooseMasterTempButtonWidgetID,
                                  kSysButtonPMRsrcId,
                                  kBindNone,
                                  430, 75, 500, 95,
                                  kTrue, kTrue,
                                  ksamChooseBtnStringKey,
    CheckBoxWidget
                                  ksamShowFrameLabelCheckBoxWidgetID,                              // WidgetId
                                  kSysCheckBoxPMRsrcId,                                                                      // RsrcId
                                  kBindNone,
                                  Frame( 10, 165, 320, 185)                                                            //  left, top, right, bottom
                                  kTrue,                                                                                                              // Visible
                                  kTrue,                                                                                                              // Enabled
                                  kAlignLeft,                                                                                                    // Alignment
                                  ksamShowFrameLabelChkBoxTextKey                                        // Initial text
    DefaultButtonWidget
                                  kOKButtonWidgetID,                    // WidgetID
                                  kSysButtonPMRsrcId,                    // RsrcID
                                  kBindNone,                                        // Binding 
                                  320, 380, 390, 400,                    // Frame (l,t,r,b)  
                                  kTrue, kTrue,                              // Visible, Enabled
                                  ksamPrefSaveStringKey,          // Button text
                        CancelButtonWidget
                                  kCancelButton_WidgetID,          // WidgetID
                                  kSysButtonPMRsrcId,                    // RsrcID
                                  kBindNone,                                        // Binding
                                  400, 380, 470, 400,                    // Frame (l,t,r,b)
                                  kTrue, kTrue,                              // Visible, Enabled
                                  ksamPrefCancelStringKey,          // Button name
                                  kTrue,                                                  // Change to Reset on option-click.
    This is for General panel design and we have written the code for this..but we dont know where to call this functions. we implemented this plug-in based on BasicSelectableDialog sample plug-in. please guide me to complete this code.
    Thanks in Advance..

    Your question is not very clear. Have you gone through the PanelTreeView.sdk example in the sdk?

  • How to write the code for screen-exits

    halo fellow SAPiens,
    I want to add a screen for t-code AS01......for which i have created a sub-screen in the function grp (related to AS01)........now i need to link the sub-screen with the Standard SAP prgm..........i.e  call the sub-screen........how can i do it...........

    pls send me one example for implementing menu-exits,screen exits and
    Screen exits - Urgent.
    screen exits
    Screen exit
    Please reward points if helpful...

  • Function Module or Class to write the source code of a class

    Hi all,
    Does anyone know a FM or a class using which I can read the source code of the methods of the class?
    Thanks,
    Sükrü

    Sure,  something like this?
    REPORT  zrich_0002.
    DATA includename TYPE program.
    DATA _classname TYPE seoclsname VALUE 'CL_GUI_ALV_GRID'.
    DATA isource TYPE STANDARD TABLE OF string WITH HEADER LINE.
    includename = cl_oo_classname_service=>get_pubsec_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    includename = cl_oo_classname_service=>get_prosec_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    includename = cl_oo_classname_service=>get_prisec_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    includename = cl_oo_classname_service=>get_ccimp_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    includename = cl_oo_classname_service=>get_ccdef_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    includename = cl_oo_classname_service=>get_ccmac_name( _classname ).
    READ REPORT includename INTO isource.
    LOOP AT isource.
      WRITE:/ isource.
    ENDLOOP.
    Regards,
    RIch Heilman

  • How to write the code to insert into attendance table

    Hi,
    I have a report
    class lov (through which all the classes will be selected).
    once any class seleted from the list it will display all the students in the class
    my query in the report was
    SELECT FIRST_NAME || ' ' || SURNAME "Pupil_Name",
    er.pupil_number,
    APEX_ITEM.CHECKBOX(1,er.pupil_number) "tickthebox"
    FROM PEAS_PUPIL pu, PEAS_ENROLMENT_REGISTER er
    WHERE pu.pupil_number = er.pupil_number
    AND er.class_id = :P53_CLASS
    pupil number column hidden becuase its a pk.
    as pupil_name and checkbox (called tickthebox)
    now I HAVE written on submit process to insert records into attendance table see below
    for i in 1..apex_application.g_f01.count loop --- check is the selector checbox, pupil_number is the hidden column with the table's PK
    INSERT INTO PEAS_ATTENDANCE (ATTENDANCE_ID,PUPIL_NUMBER) VALUES
    attendance_seq.NEXTVAL,
    APEX_APPLICATION.G_F01(i)
    end loop;
    but this is only inserting checked records ...not inserting unchecked records.
    is there anyway i can insert both checked and unchecked records into tABLE.
    THANKS
    PRASAD

    What I mean is that if you want to use checkbox item you must compare its value to current row ID.
    You have two items containing pupil_number:
    - APEX_ITEM.CHECKBOX(1,er.pupil_number)
    - APEX_ITEM.HIDDEN(2,er.pupil_number)
    When you call first one like "FOR i in 1 .. apex_application.g_f01.COUNT", you will get only pupil_numbers of checked checkboxes.
    When you call second one like "FOR i in 1 .. apex_application.g_f02.COUNT", you will get pupil_numbers of all rows.
    You get "no data error" because you reffer in your process to variable apex_application.g_f01(i) for row i, that is not checked.
    That's why you should check in your process if current row is checked every time when you want to reffer to this checkbox. You can do it using this code:
    FOR i in 1 .. apex_application.g_f02.COUNT
    LOOP
    FOR j in 1 .. apex_application.g_f01.COUNT
    LOOP
    IF apex_application.g_f01(j) = apex_application.g_f02(i) THEN
          /Your process for checked records/
    END IF;
    END LOOP;
          /Your process for unchecked records/
    END LOOP;And I think you should modify your report query for:
    SELECT FIRST_NAME || ' ' || SURNAME "Pupil_Name",
    APEX_ITEM.HIDDEN(2,er.pupil_number)||APEX_ITEM.CHECKBOX(1,er.pupil_number) "tickthebox"
    FROM PEAS_PUPIL pu, PEAS_ENROLMENT_REGISTER er
    WHERE pu.pupil_number = er.pupil_number
    AND er.class_id = :P55_CLASSYou can find some interesting information about using checkbox in APEX help.
    Regards,
    Przemek

  • Difference in user exit , fm and includes

    HI,
    What is user exit , function module and includes? What is the difference among them? When and how to use them? Please provide example.
    Regards,
    Pramod

    Hi Pramod,
    user exits, function modules and includes can not be compared to each other. Each one of them carry their own purpose and functionality.
    User exit's help you in achieving the additional functionality that standard SAP doesnt offer.
    For example, if your client requirement is add another tab in sales order in addition to the existing ones............it can be done using the user exit.
    SAP has provided several user exits through which you provide the additional functionality to the client without disturbing the SAP standard code.
    you can view SAP standard user exits using t-code: SMOD
    Function modules help you in carrying out a specific task. They can be called into a program to perform a particular task and are resuable any number of times i.e. can be called into any program to perform the same task.
    SAP has already provided many function modules, for example -  for determining exhange rates, reading texts etc.
    Apart from the SAP standard ones, you can also develop your own function module using transaction code SE37 and use them appropriately.
    Includes can be defined as sub programs.........they are part of a program. Include can either be local or global i.e. can be restricted to be used in a particular program and can be made available to other programs.
    Basically, a main program is divided into several includes for a better understanding.
    REWARD POINTS IF HELPFUL
    Regards
    Sai

Maybe you are looking for

  • Default size of Cover Flow

    Is it possible to set the default size of the Cover Flow window? And keep the same size when you scale the entire window?

  • Scope of SAP GRC

    Hi Experts, Need ur valuable suggestion.. I am getting opportunity to work on GRC module. How is the scope for GRC Consultant in near future?? Is it very specialized module. awaiting ur reply.. Julie

  • Help Needed regarding to Table View Control

    Hi Abapers In Table View Control which property or system variable keeps the user selected row's row id. Situation is that user enters many records into sales details table view. Table view contains the fields, productid product no qty discount and r

  • Convert rows into comma seperated values

    Hello I have a question, I have a table like this. Memid           values 1                  10 1                 20 2                30 3                50 3                60 3               10 i want to convert it like this memid              valu

  • Difference in Planning function in BPS and IP

    Hi All,      Can somebody tell me is there a difference in 1) planning function Fox in BPS and IP where exactly is the difference and 2) what all planning functions are different in IP