Custom Infotype length limitation

Hi,
I have a requirement to create a custom infotype in ECC 6.0 with a table control which can have a maximum of 50 line items. Something similar to basic pay infotype and PA0008. While going through the SAP documentation I found the below statement .
"A new infotype is limited to a maximum of 1000 positions. This restriction is due of the length of structure PRELP, which is used as a container during infotype processing."
This is available at
http://help.sap.com/saphelp_erp60/helpdata/en/60/d8d8c7576311d189270000e8322f96/frameset.htm
In our implementation, each record of standard table PA0008 could go upto 1200 characters with a maximum of 40 line items in the table control. We never used more than 5 line items and never had any problem.
Since the custom table control can have upto 50 line items, each record of my custom table pa9xxxx could go upto 4000 characters and I'm concerned that if this is going to be an issue. Any suggestions in this regard please ?
Thanks for your time,
Kumar.

Hi Venkata
Please see notes 563145 and 1168062 for help
Please also be aware that custom infotypes and the effects of changing structures are the customers responsibility
Best wishes
Stuart

Similar Messages

  • Custom infotype - field length issue

    Hi experts,
    We have a requirement of keeping so much free text fields in the custom infotype. However, the system doesnu2019t allow having these many fields in the PS structure. We got the information from the error description as- The maximum length of PS structures for infotypes is 1000; this is the length of the general infotype header in bytes. Could you please suggest some way to solve this issue?
    Thanks,
    Rahul

    Give a field and try to enter some decription for large text in  that field .
    Create a table for that field and give F4 for that .
    Maintain the text in SO10 and call that text using read_text fn module .
    Try this way

  • FreeText box in custom infotype

    hi friends.
    I have a requierment in which i have to give a field which can accept long text.The length should not be limited.means Free text field.
    Can any one help me.
    advence thanx.
    chandra.....

    Hi,
    From the Screen design perspective ;
    Try placing a Text Edit Control in the custom Infotype.
    DATA  line_len TYPE i VALUE 60. "--- The length you define
    DATA  g_editor TYPE REF TO cl_gui_textedit.
    *1) ---- Create custom container control
    *2) ---- Attach Text Edit to Custom container
    CREATE OBJECT g_editor
      EXPORTING
       parent = g_editor_container
       wordwrap_mode =  cl_gui_textedit=>wordwrap_at_fixed_position
       wordwrap_position = line_length
       wordwrap_to_linebreak_mode = cl_gui_textedit=>true.
    *3) Read Text in a PAI event, say Save of the Infotype:
    DATA g_text TYPE string. "---- Or type TDLINE/the data type to match the size as per requirement
    CALL METHOD g_editor->get_text_as_stream
      EXPORTING
        only_when_modified = cl_gui_textedit=>false
      IMPORTING
        text               = g_text
      EXCEPTIONS
        OTHERS             = 1.
    For more.. check :
    [Sample code for TextEdit Control|http://www.erpgenie.com/abap/controls/textedit.htm]
    [SAP Textedit|http://help.sap.com/saphelp_nw04/helpdata/en/eb/549e36cf0ecb7de10000009b38f889/content.htm]
    Cheers,
    Remi

  • HR ABAP : Custom Infotype updations through FM HR_INFOTYPE_OPERATION

    Hi All,
              Actually, I want to update the custom infotype 3 fields as per my user inputs. I am fetching the data from the PA table acoording to sy-datum falling in the begda, enda limitations. now I am changing the field with new values in the work area. And pass with the following data to the FM.
              But I am getting the error 'No data stored for 9008 in the selected period', eventhough it is already having a data in the database table. I had seen prvious therads, but could not get how they solved the issue.
    Please provide the inpus for the following code.
              ( I had also passed the validity start and end from the database entry. at this moment it gets dumped at the statement
      assign record to <record> casting type (tabname). "XDP UniCode
    where tabname is proposed from t777d-ppnnn. which is a structure and having a value as P9008. If i change the value at debug point to PA9008. it works fine. is there anything extra i need to do to solve this issue? )
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
    EXPORTING
    infty = '9008'
    number = pernr
    "SUBTYPE =
    "OBJECTID =
    "LOCKINDICATOR =
    "VALIDITYEND =
    "VALIDITYBEGIN =
    "RECORDNUMBER =
    record = wa_pa9008
    operation = 'MOD'
    "TCLAS = 'A'
    "DIALOG_MODE = '0'
    "NOCOMMIT =
    "VIEW_IDENTIFIER =
    "SECONDARY_RECORD =
    IMPORTING
    return = l_bapireturn
    key = bapipakey_tab
    Regards,
    Brijesh Patel

    Hi,
    Check this code once
    Read Infotype9004 Record for the personnel No
        CALL FUNCTION 'HR_READ_INFOTYPE'
          EXPORTING
            tclas           = A
            pernr           = pernr
            infty           = 9004
          IMPORTING
            subrc           = v_subrc
          TABLES
            infty_tab       = it_pa9004
          EXCEPTIONS
            infty_not_found = 1
            OTHERS          = 2.
    Read it_pa9004 into wa_pa9004 with some condition.
    if sy-subrc eq 0.
    Lock the employee for processing infotype 9004
        CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
          EXPORTING
            number = wa_pa9004-pernr.
      v_begda = wa_9004-begda.
          v_endda = wa_9004-endda.
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
            EXPORTING
              infty         = c_9004
              number        = wa_9004-pernr
              subtype       = c_0001
              validityend   = v_endda
              validitybegin = v_begda
              record        = wa_9004
              operation     = c_mod
              tclas         = c_a
             dialog_mode   = c_0
              dialog_mode   = '2'
            IMPORTING
              return        = wa_return.
    CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
          EXPORTING
            number = wa_pa9004-pernr.
    endif.
    reward the points if it is helpful.
    Regards,
    Srilatha

  • HR ABAP : Custom Infotype updations

    Hi All,
    I am new to HR ABAP. Actually, I want to update the custom infotype 3 fields as per my user inputs. I am fetching the data from the PA table acoording to sy-datum falling in the begda, enda limitations. now I am changing the field with new values in the work area. And pass with the following data to the FM.
    But I am getting the error 'No data stored for 9008 in the selected period'. I had seen prvious therads, but could not get how they solved the issue.
    Please provide the inpus for the following code. I had also passed the validity start and end.
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
    EXPORTING
    infty = '9008'
    number = pernr
    SUBTYPE =
    OBJECTID =
    LOCKINDICATOR =
    VALIDITYEND =
    VALIDITYBEGIN =
    RECORDNUMBER =
    record = wa_pa9008
    operation = 'MOD'
    TCLAS = 'A'
    DIALOG_MODE = '0'
    NOCOMMIT =
    VIEW_IDENTIFIER =
    SECONDARY_RECORD =
    IMPORTING
    return = l_bapireturn
    key = bapipakey_tab
    Regards,
    Brijesh Patel

    Hi Remi,
            I have done the same thing. Please see the code. data is also available in the database. But the output is the error message. Please give some inputs on this.
    ***Updation of the PA9003 Infoty pe with the LTA amount and Medical Amount
        SELECT SINGLE endda
                      begda
                      FROM pa0001
                      INTO (endda, begda)
                      WHERE pernr EQ pernr
                        AND endda GE sy-datum
                        AND begda LE sy-datum.
        SELECT SINGLE *
                      FROM pa9003
                      INTO lwa_pa9003
                      WHERE pernr EQ pernr
                        AND endda >= sy-datum
                        AND begda <= sy-datum.
        wa_pa9003 = lwa_pa9003.
        wa_pa9003-zzallw = zzallw.
        wa_pa9003-zzlta = zzlta.
        wa_pa9003-zzmed = zzmed.
        ADD 1 TO wa_pa9003-seqnr.
    ***Locking the object
        CALL FUNCTION 'ENQUEUE_EPPRELE'
          EXPORTING
            pernr          = pernr
          EXCEPTIONS
            foreign_lock   = 1
            system_failure = 2
            OTHERS         = 3.
        CALL FUNCTION 'HR_INFOTYPE_OPERATION'
          EXPORTING
            infty                  = '9003'
            number                 = pernr
       subtype                = wa_pa9003-subty
       objectid               = wa_pa9003-objps
       lockindicator          = wa_pa9003-sprps
       validityend            = wa_pa9003-endda
       validitybegin          = wa_pa9003-begda
       recordnumber           = wa_pa9003-seqnr
            record                 = wa_pa9003
            operation              = 'MOD'
      TCLAS                  = 'A'
      DIALOG_MODE            = '0'
      nocommit               = space
      VIEW_IDENTIFIER        =
      SECONDARY_RECORD       =
         IMPORTING
           return                 = l_bapireturn
           key                    = bapipakey_tab
    ***Unlocking the object
        CALL FUNCTION 'DEQUEUE_EPPRELE'
          EXPORTING
            pernr = pernr.
    Regards,
    Brijesh Patel

  • Pop up message in custom infotype screen

    Hi Expert,
    I have one custom infotype with field zzdest ( destination airport) which show all destination airport like mumbai,delhi etc.this
    airpot are mainatin in an ztable  ZR_HR_DES. while user selecting destination some name will be wrong like mumbay instead of mumbai  in the custom table at that time it should show the pop up message that please select mumbai instead of mumbay.
    can any one suggest me how to do this.
    Regards,
    Mdaddu

    When user give a text that is not in your table, you may try to fill an internal table with similar text and then use this internal table in a popup select FM like REUSE_ALV_POPUP_TO_SELECT.
    Some way to fill the internal table
    - with leftmost part of the name removing rightmost character until you get some records (remove right most character and add wildcard til select returns some records) (will identify incomplete text or error at rightmost characters)
    - converting erroneous input to a range replacing every character by a wildcard (DO length(str)/replace sy-tabix character by wildcard and append to a range) (identify a single mistake on a character)
    - wait til SAP implements a [Levenshtein distance|http://en.wikipedia.org/wiki/Levenshtein_distance] rule in SQL...
    Remarks: why don't you use an "official" airport code like ICAO or IATA to identify an airport, a text like "Bombay",  "Mumbai", "Sahar" or even "Chhatrapati Shivaji" can refer to the same airport, and many cities have more than one airport (eg. Juhu for small private aircraft)
    Regards,
    Raymond

  • Problem in custom infotype.

    Hi friends,
    I have two problem on creating custom infotype 9010.
    The infotype has 4 field:
    docu_type -> subtype field
    Docu_number
    cost -> DE:WAERS
    cost_curr -> DT: Curr length 10 dec 2
    I referred the cost to the cost_curr field of the infotype 9010
    First Problem
    The infotype is created but when I tried to enter the cost via pa30
    put 50 on it, and press enter, 50 will be changed into 5000. But when I re-enter again, the ammount remained unchanged.
    2nd Problem.
    For the infotype i need to give a further information on the screen.
    Such as that, it looks like the screen on IT0022 where when you put the educational establishment, the text of the subtype appears beside it. How do I suppose to do things like that with my infotype so that when I enter 4 as the subtype field, the subtype text appears.
    Thanks

    prob 1 .
    what is the reference field u have given for the currency of ur 9010 table .. just check the reference field u have given for currency ..
    how are u handling this in the pai part of the code , can u just make the field pass to a char field and then reassign it to the screen field .. for primary investigation.
    prob 2.
    u need to maintain a field just adjacent field in the layout as ouput field only . and populate this field with the suitable text once u enter the subtype field which is input field .
    this u need to do in the pai part of the infotype mp901000 code  ..
    if p-styp is not initial .. "subtype is present fire the text part .
    populate text to screen field p9010-stxt.
    endif.

  • Custom infotype pqah report issue...

    Dear Friends,
    For custom infotype In PQAH report generation we are getting message as u201CError when generating the report (see long text)u201D.Is there any restriction for field lengths & characters in report generation. Please give me a solution about this issue.
    Thanks in advance,
    Satya

    Dear Friends,
    We have total 27 output fields in this custom infotype. If I will select some output fields in that custom infotype pqah report is generating. But if I will select all out put fields that specific infotype then system is showing that error message in report generation.
    Thanks in advance,
    Satya

  • Item number field length limitation?

    A non-SAP client is presenting a business proposal to a SAP customer and what they want to know is what is the limitation on Item numbers for products for a manufacturing company running SAP ERP? No, we cannot ask the customer, yet!
    I know the SAP is highly customizable but is there a field length limitation or anything else you can tell me?
    Many thanks!
    -Bob

    Hi,
    Pls refer:
    [http://help.sap.com/saphelp_46c/helpdata/en/77/1a39516e36d1118b3f0060b03ca329/content.htm]
    Regards,
    Amit
    Edited by: Amit More on Jun 7, 2008 7:44 AM

  • E1 Cable Length Limitation

    I need to know the E1 cable length limitations,in meters? Actually i've a customer who needs to extend their E1's from the basement to DataCenter Room and you people know the UTP Cable limitation. So which type of device should i refer to them for this purpose.

    UTP gauge 22, typical attenuation, should cover 1000 feet ( > 300 m) without problem.
    Make sure you use proper cable and respect the pair twisting, that is NOT like ethernet.

  • DHCPv6 Custom Prefix Length

    Hi all,
    I've been trying to implement dhcpv6 with Windows Server 2012. Due to our ISP not offering native IPv6 access, we went through a third party tunnel provider to have ipv6 internet connectivity. What I need to do however, is set a custom prefix length for
    our dhcp server. Our tunnel provider gave us a /48 block to use for hosts, but windows will only let me create a /64 size scope. Any ideas? The prefix size needs to be /48 in order for this to work correctly. All of our routers are already setup, and we attempted
    to use static ipv6 configuration to do a test for configuration, which has succeeded. The only issue is dhcp giving out ipv6 with /48 prefix to work with tunnel provider. Any ideas? We use Windows Server 2008 R2, and Windows Server 2012, if that helps.

    I'll comment between your questions/comments:
    JC - first off, in IPv6 there is the concept/operations known as Address Autoconfiguration. This process requires up to 2 components in a network system: L3 switches or router to send Router Advertisements - which tells client how to do all this, and then
    possibly DHCPv6 servers to provide clients with IPv6 addresses and/or "other information" like dns, domain name, time srvr, download srvr, etc.
    This taes a bit to get used to, as well as sometimes a bit of work to "discover" what all is needed and how to properly configure.
    a) the DHCPv6 route is not advertised, so the distributed dynamic IPv6 addresses are useless (no connectivity between hosts); there is a manual/temporary netsh override for that, but I don't think this is the proper way to go.
    JC - clients learn the default gateway via the router's Router Advertisement (RA). RFC3315 (DHCPv6) does not provide a scope option for def g/w. You should not manually enter an IPv6 def g/w.
    b) Here might be another issue, I don't know how I configured the DHCPv6 role in past (stateless vs stateful), perhaps that's the problem, need to look deeper into it, but either way our outdated networking infrastructure (routers and switches) is not aware
    of IPv6 protocol at all, it probably doesn't help that I don't even know how the DHCPv6 role was configured in past.
    JC - if you want a DHCPv6 server to supply IPv6 addresses and DNS/domain name, etc to clients, that role is Stateful. If you want DHCPv6 to supply only DNS, domain name, etc and the RA supply the network prefix (SLAAC), that role is Stateless (SLAAC plus
    some DHCPv6).
    Stateful (DHCPv6) operations are the closest to how we run DHCP for IPv4 networks today.
    c) I assigned static IPv6 /112 addresses to servers (and they work fine including the DNS lookups) and was hoping to have the same prefix/subnet for clients, instead I get up to 4 different IPv6 addresses on servers (static, dynamic, temporary route, link-local)
    and just one address on clients and that one belonging to that dynamic prefix (not what I wanted to have initially) ...
    JC - all IPv6 subnets should be /64 for 64 bit network and 64 bit Interface ID (IID) (host address), most OSs will be happier and that is the defined standard way of operating IPv6. Also as you have seen, Microsoft's DHCPv6 server does not allow you to change
    the network prefix (/64).
    You will always have link-local addresses, and if you are getting the IPv6 and IPv6 Temp, then your RA on the subnet is sending RA's with the "A" flag on for SLAAC, and of you have a static addresses defined for servers on the server vlan, you don't want
    SLAAC config on that vlan.
    d) How do I fix IP Helper on our core router to pass the IPv6 DHCP requests to other VLANs (currently they are blocked/discarded), it seems that IPv4 IP Helper doesn't work for IPv6?
    JC - IPv4 and IPv6 are TOTALLY separate protocols. Everything you do for IPv4, needs a counterpart enabled for IPv6. No IPv4 config does anything for IPv6.
    You need a dhcpv6-relay definition which is the IPv6 counterpart to dhcp-relay/IP helper-address...see your L3 switch/router vendor docs for configuring dhcpv6-relay.
    Is it all by design then and re-installing DHCPv6 server in stateful mode won't change that or I am missing something completely?
    JC - Correct, simply having Stateful (DHCPv6) is not all there is to it. You must configure your RA to instruct IPv6 clients how to address themselves. According to the IPv6 RFCs, clients are told how to address themselves (except for manual addressing),
    which is not like the way IPv4 operates.
    All your IPv6 config components need to be specifically configured in order for the system you want to work correctly, to work. IPv6 routing, specific option flags in the RA's, dhcpv6-relay, and DHCPv6 scopes. You can't (generally) just "turn on" IPv6 and
    have it work (the way you think it should).
    IPv6 is quite a beast, but it seems that majority of windows server admins (like me) have limited knowledge on how to configure it properly, resulting in some unexpected outcomes and gotchas ... then days of troubleshooting and then another gotcha ... I
    browsed technet for days/weeks and either end up finding unresolved IPv6 "issue" threads where nobody knows what is what or some super-complicated solutions that truly work only for a few ... frustrating ...
    JC - IPv6 is not a simple "turn-it-on" protocol, as there are differences in its operation as you see. There 5 great IPv6 books you should consider getting:
    Guide to TCP/IP, 4th edition - IPv4 and IPv6 TCP/IP foundations, operations, and examples
    Practical IPv6 for Windows Administrators
    Understanding IPv6
    IPv6 Fundamentals
    IPv6 Essentials (but wait for the 3rd edition coming out in July)
    Check out gogo6.com/main and view the IPv6 webinar/workshop training calendar. A few of us have facilitated some basic IPv6 trng webinars. I think the schedule is being worked on at the moment, but more classes should be coming.
    Additionally, I offer IPv6 Forum Certified training.  teachmeipv6.com and I provide IPv6 consulting services.
    Hmm...maybe I'll design a webinar for configuring a system like you are doing: L3 switch/router configuration and server side DHCPv6 config. I currently facilitate IPv6 hands-on lab workshops (full day) that cover all of this content.
    hth...Jeff
    Jeff Carrell

  • Error while creating a query for my custom infotype

    Hi,
    I have created a custom infotype with fields currency amount and currency field .
    While I am creating a query for it its giving an error
    Message no. AQ_AD_HOC221 Error when generating the report(see long text )
    I tried to execute the standard program RPUMS40CCI but still I am facing same error .
    I have also maintained table T777i for my infotype but still problem exists.
    Please help.
    P

    Hi
    Check in PM01

  • Error while editing an automaticlly populated record of  a custom infotype

    hi,
    a query in HR ABAP.
    i have created a custom Infotype to store the CTC details of an employee. this custom IT needs to get the records auto populated, when they are created in Infotype 0008.
    i have used the exit. EXIT_SAPFP50M_002  inside which  an include program is written  :ZXPADU02
    using this, the records made to get create automatically in the custom IT.
    but when we try to modify or delete those records thru the tcode PA30,
    it does not allow to do so and throws a standard error message. as  below.
    Specified subtype is invalid
    Message no. PG088
    please help me out to fix this issue.

    the exact point of the std error is,
    i do the folowing steps.
    1)_ for auto creating a record in custom IT Pa**** , i goto transaction, PA30, create record in IT 0008 with a basic Pay., click on save.
    on saving , the EXIT_SAPFP50M_002 is called where i ve written a Z inlcude Program, which inserts the record in custom IT PA****.  this is successful.
    2) when i try to change or delete the same record which i ve created as above, through the Tcode PA30 for custom IT, PA
    ****, i get the error.
    hope the problem is clearly mentioned

  • About to use HR_INFOTYPE_OPERATION to create customer infotype issue:

    hi
    i want to create infotype use function(HR_INFOTYPE_OPERATION).
    this infotype is customer infotype.
    the first scenario is:
      i'm be sure no data about one employee in this infotype(9004).
      to call with data upload function and put data into internal table IT_PA9004.
      and the table data as follow:
    one line: it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080201' , it_pa9004-endda = '20080930'
              it_pa9004-zzvalue = 50 (customer field).
    two line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080201' , it_pa9004-endda = '20080930'
              it_pa9004-zzvalue = 60 (customer field).
    three line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 70 (customer field).
    four line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 80 (customer field).
    i run the programme and get information is:
    11022887 insert ok.
    11022887 insert ok.
    11022887 insert ok.
    11022887 insert ok.
    but i use the transation PA30 to view all data:
    in database just exist one row:
    four line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 80 (customer field).
    the second scenario is:
    in database the infotype have exist one row:
               pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ02',
               pa9004-begda = '20080318' , pa9004-endda = '20080318'
               pa9004-zzvalue = X (customer field).
    and i create another row:
    line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ02',
              it_pa9004-begda = '20080318' , it_pa9004-endda = '99991231'
              it_pa9004-zzvalue = 80 (customer field)
    i run the programme and get information is:
    11022887 insert ok.
    the three scenario is:
        set  HR_INFOTYPE_OPERATION of import parameter operation = 'MOD'
        in any scenario will get error :not exist subtype .
    what heppend about HR_INFOTYPE_OPERATION working,i had to use this function to
       create other infotype of SAP owner.
       and will create successfully.
    so i thank it may be config Constraints about customer infotype.
    is time Constraints effect?
    so i want to how to check it?
    and if i want to create one infotype for customer using PM01 what some thing
    must be taken into account.
    think you advance.
    partial source code as follow:
    FORM ACTION_INSERT .
      DATA: P_FLAG TYPE C.
      DATA: WA_LOG LIKE LINE OF DATA_LOG.
      DATA: PP_ACTION TYPE PSPAR-ACTIO.
      LOOP AT IT_PA9004.
        CLEAR P_FLAG.
        CALL FUNCTION 'HR_PSBUFFER_INITIALIZE'.
        PERFORM lock_employee USING IT_PA9004-pernr CHANGING P_FLAG.
        PP_ACTION = IT_PA9004-ACTION.
        PERFORM HR_INFOTYPE_OPERATION USING IT_PA9004 PP_ACTION CHANGING P_FLAG.
        IF P_FLAG IS INITIAL.
          if test_run = space.
            COMMIT WORK.
          else.
            ROLLBACK WORK.
          endif.
          write:/ it_pa9004-pernr,'insert ok'.
        ELSE.
          ROLLBACK WORK.
          write:/ it_pa9004-pernr,'error'.
        ENDIF.
        PERFORM unlock_employee USING IT_PA9004-pernr .
      ENDLOOP.
    ENDFORM.                    " ACTION_INSERT
    FORM LOCK_EMPLOYEE  USING    P_PERNR
                        CHANGING PP_FLAG.
      CHECK PP_FLAG IS INITIAL.
      CLEAR P_RETURN.
      CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
        EXPORTING
          number = P_PERNR
        IMPORTING
          return = P_RETURN
        EXCEPTIONS
          OTHERS = 01.
      CALL FUNCTION 'HR_INITIALIZE_BUFFER'
        EXPORTING
          pernr = P_PERNR.
      IF P_RETURN IS NOT INITIAL.
        PP_FLAG = '1'.
      ENDIF.
    ENDFORM.                    " LOCK_EMPLOYEE
    FORM HR_INFOTYPE_OPERATION  USING    P_PA9004 LIKE IT_PA9004
                                         P_ACTION type PSPAR-ACTIO
                                CHANGING PP_FLAG.
      CHECK PP_FLAG  IS INITIAL.
      DATA: bapipakey type bapipakey,
            P_SUBTY TYPE P9004-SUBTY,
            PP_9004 TYPE TABLE OF  P9004 WITH HEADER LINE.
      CLEAR P_RETURN.
      REFRESH PP_9004.
      MOVE-CORRESPONDING P_PA9004 TO PP_9004.
      IF P_ACTION = 'INS'.
        PP_9004-AEDTM = SY-DATUM.
        PP_9004-UNAME = SY-UNAME.
      ENDIF.
      IF P_ACTION = 'MOD'.
        PP_9004-AEDTM = SY-DATUM.
        PP_9004-UNAME = SY-UNAME.
      ENDIF.
      APPEND PP_9004.
      P_SUBTY = P_LGART.
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          infty         = '9004'
         subtype       = 'FQ03'
          subtype       = P_SUBTY
          number        = PP_9004-pernr
          validityend   = PP_9004-ENDDA
          validitybegin = PP_9004-begda
         RECORDNUMBER  = pp_9004-seqnr
          record        = PP_9004
           operation     = 'INS'
         operation     = P_ACTION
          nocommit      = 'X'
        IMPORTING
          return        = P_RETURN
          key           = bapipakey
        EXCEPTIONS
          OTHERS        = 0.
      IF P_RETURN IS NOT INITIAL.
        PP_FLAG = '9'.
      ENDIF.
    ENDFORM.                    " HR_INFOTYPE_OPERATION
    FORM UNLOCK_EMPLOYEE  USING    P_PERNR.
      CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
        EXPORTING
          number = p_pernr
        IMPORTING
          return = P_RETURN
        EXCEPTIONS
          OTHERS = 01.
    ENDFORM.                    " UNLOCK_EMPLOYEE

    hi
    i want to create infotype use function(HR_INFOTYPE_OPERATION).
    this infotype is customer infotype.
    the first scenario is:
      i'm be sure no data about one employee in this infotype(9004).
      to call with data upload function and put data into internal table IT_PA9004.
      and the table data as follow:
    one line: it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080201' , it_pa9004-endda = '20080930'
              it_pa9004-zzvalue = 50 (customer field).
    two line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080201' , it_pa9004-endda = '20080930'
              it_pa9004-zzvalue = 60 (customer field).
    three line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 70 (customer field).
    four line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 80 (customer field).
    i run the programme and get information is:
    11022887 insert ok.
    11022887 insert ok.
    11022887 insert ok.
    11022887 insert ok.
    but i use the transation PA30 to view all data:
    in database just exist one row:
    four line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ03',
              it_pa9004-begda = '20080101' , it_pa9004-endda = '20081031'
              it_pa9004-zzvalue = 80 (customer field).
    the second scenario is:
    in database the infotype have exist one row:
               pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ02',
               pa9004-begda = '20080318' , pa9004-endda = '20080318'
               pa9004-zzvalue = X (customer field).
    and i create another row:
    line:it_pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ02',
              it_pa9004-begda = '20080318' , it_pa9004-endda = '99991231'
              it_pa9004-zzvalue = 80 (customer field)
    i run the programme and get information is:
    11022887 insert ok.
    but in database just exist the first data
               pa9004-pernr = '11022887' ,it_pa9004-subty = 'FQ02',
               pa9004-begda = '20080318' , pa9004-endda = '20080318'
               pa9004-zzvalue = X (customer field).
    the three scenario is:
        set  HR_INFOTYPE_OPERATION of import parameter operation = 'MOD'
        in any scenario will get error :not exist subtype .
    what heppend about HR_INFOTYPE_OPERATION working,i had to use this function to
       create other infotype of SAP owner.
       and will create successfully.
    so i thank it may be config Constraints about customer infotype.
    is time Constraints effect?
    so i want to how to check it?
    and if i want to create one infotype for customer using PM01 what some thing
    must be taken into account.
    think you advance.
    partial source code as follow:
    FORM ACTION_INSERT .
      DATA: P_FLAG TYPE C.
      DATA: WA_LOG LIKE LINE OF DATA_LOG.
      DATA: PP_ACTION TYPE PSPAR-ACTIO.
      LOOP AT IT_PA9004.
        CLEAR P_FLAG.
        CALL FUNCTION 'HR_PSBUFFER_INITIALIZE'.
        PERFORM lock_employee USING IT_PA9004-pernr CHANGING P_FLAG.
        PP_ACTION = IT_PA9004-ACTION.
        PERFORM HR_INFOTYPE_OPERATION USING IT_PA9004 PP_ACTION CHANGING P_FLAG.
        IF P_FLAG IS INITIAL.
          if test_run = space.
            COMMIT WORK.
          else.
            ROLLBACK WORK.
          endif.
          write:/ it_pa9004-pernr,'insert ok'.
        ELSE.
          ROLLBACK WORK.
          write:/ it_pa9004-pernr,'error'.
        ENDIF.
        PERFORM unlock_employee USING IT_PA9004-pernr .
      ENDLOOP.
    ENDFORM.                    " ACTION_INSERT
    FORM LOCK_EMPLOYEE  USING    P_PERNR
                        CHANGING PP_FLAG.
      CHECK PP_FLAG IS INITIAL.
      CLEAR P_RETURN.
      CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
        EXPORTING
          number = P_PERNR
        IMPORTING
          return = P_RETURN
        EXCEPTIONS
          OTHERS = 01.
      CALL FUNCTION 'HR_INITIALIZE_BUFFER'
        EXPORTING
          pernr = P_PERNR.
      IF P_RETURN IS NOT INITIAL.
        PP_FLAG = '1'.
      ENDIF.
    ENDFORM.                    " LOCK_EMPLOYEE
    FORM HR_INFOTYPE_OPERATION  USING    P_PA9004 LIKE IT_PA9004
                                         P_ACTION type PSPAR-ACTIO
                                CHANGING PP_FLAG.
      CHECK PP_FLAG  IS INITIAL.
      DATA: bapipakey type bapipakey,
            P_SUBTY TYPE P9004-SUBTY,
            PP_9004 TYPE TABLE OF  P9004 WITH HEADER LINE.
      CLEAR P_RETURN.
      REFRESH PP_9004.
      MOVE-CORRESPONDING P_PA9004 TO PP_9004.
      IF P_ACTION = 'INS'.
        PP_9004-AEDTM = SY-DATUM.
        PP_9004-UNAME = SY-UNAME.
      ENDIF.
      IF P_ACTION = 'MOD'.
        PP_9004-AEDTM = SY-DATUM.
        PP_9004-UNAME = SY-UNAME.
      ENDIF.
      APPEND PP_9004.
      P_SUBTY = P_LGART.
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          infty         = '9004'
         subtype       = 'FQ03'
          subtype       = P_SUBTY
          number        = PP_9004-pernr
          validityend   = PP_9004-ENDDA
          validitybegin = PP_9004-begda
         RECORDNUMBER  = pp_9004-seqnr
          record        = PP_9004
           operation     = 'INS'
         operation     = P_ACTION
          nocommit      = 'X'
        IMPORTING
          return        = P_RETURN
          key           = bapipakey
        EXCEPTIONS
          OTHERS        = 0.
      IF P_RETURN IS NOT INITIAL.
        PP_FLAG = '9'.
      ENDIF.
    ENDFORM.                    " HR_INFOTYPE_OPERATION
    FORM UNLOCK_EMPLOYEE  USING    P_PERNR.
      CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
        EXPORTING
          number = p_pernr
        IMPORTING
          return = P_RETURN
        EXCEPTIONS
          OTHERS = 01.
    ENDFORM.                    " UNLOCK_EMPLOYEE

  • How to create the custom infotypes in Campus Management

    Hi,
    Please help me how to create the custom infotypes in campus management.
    Thanks,
    Lakshmi.

    Hi,
    Steps to create a HR Infotype:
    1) Go to Transaction PM01.
    2) Enter the custom Infotype number which you want to create (Should be a 4 digit number, start with 9).
    3) Select the 'Employee Infotype' radio button.
    4) Select the 'PS Structure Infotype'.
    5) Click on Create... A separate table maintenance window appears...
    6) Create a PS structure with all the fields you want on the Infotype
    7) Save and Activate the PS structure
    8) Go back to the initial screen of PM01.
    9) Click on 'All' push button. It takes a few moments.
    10) Click on 'Technical Characteristics'. Infotype list screen appears
    11) Click on 'Change'(pencil) button
    12) Select your Infotype and click on 'Detail' (magnifying glass) button
    13) Give 'T591A' as subtype table
    14) Give 'T591S' as subtype txt tab
    15) Give your subtype field as subtype field
    16) Save and come back to PM01 initial screen
    17) Click on 'Infotype Characteristics' ... Infotype list screen appears
    18) Click on 'Change' (pencil) button
    19) Click on 'New Entries'
    20) Enter your Infotype number and short text
    21) Here we have to set different Infotype Characteristics as per the requirement. (Better open another session with some standard Infotype's infotype characteristics screen and use as the reference to fill yours)
    22) Save your entries.
    23) Now the Infotype is created and ready to use.
    24) If you want to change the layout of the Infotype as per your requirement...
    25) In the PM01 initial screen...Select 'Screen' radio button and give 2000 as the screen name, then click on edit.
    26) In the next screen.. Select 'Layout Editor' and click 'Change'.
    27) Screen default layout appears...here you can design/modify the screen..change the attributes of the fields..etc.
    28) Save and activate. (Don't forget to 'Activate at every level)
    Subtype Creation :
    Transaction PM01 Goto Subtype Characteristics. Click on Append and then subtype. Enter the name and description of subtype on screen.
    Then goto technical Characteristics and maintain the details of subtype there. I.e name of subtype i.e. component name defined in PSnnnn. Subtype table is T591A.
    Subty.text tab is T591S and time const tab is T591A.
    See:
    http://help.sap.com/saphelp_46c/helpdata/en/4f/d5268a575e11d189270000e8322f96/content.htm
    HR related site:
    http://www.sapdevelopment.co.uk/hr/hrhome.htm
    Enhancement of Infotype
    Check the following
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PAXX/PYINT_INFOTYP.pdf
    Infotype Enhancement overview screen
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/60a7586d-edd9-2910-68a8-8204303835a1
    Cheers,
    vasavi.
    kindly reward if helpful.

Maybe you are looking for

  • FCP7: How do I save 5 small separate Scenes, saved by project, to only one final project?

    Specs: FCP7 Software MCH70 Panasonic Camera Using a college, Media Lab, Desktop Mac. I captured files but had some trouble at first. Then I saved each Scene (in my short 5 minute total project) as separate projects. I have edited them and they all ha

  • How to Implement User Area in Oracle Forms 6i

    Hi, Could anyone please let me know how to implement Item Type *"User Area"* ? How to add User Area in layout Editor?, Thanks and Regards, Manasa

  • Reg : Cosignment Stock

    Hi ,                Good Evening to all. My name is Usha . I am new to SAP MM . I have one doubt .          How to transfer the consignment stock to unrestricted stock automatically if we mention certain period of time. Means after that time , the st

  • Route not showing up in routing table.

    I have my core switch connecting to my router which connects to our MPLS provider. My router has a BGP default route going to the MPLS provider edge router B*   0.0.0.0/0 [20/0] via 172.30.252.78, 1w4d .... This route is not showing up in my core swi

  • Disabling the comments in the xl sheet when it is read from a JSP page

    Hi everyone, I am currently working on a jsp page which will load the data from the xcel sheet and update the information into the db.The code works fine unless the excel sheet doesnt have any comments mentioned in any of its colums.When we have comm