Segment definition version

Hi,
We have generated IDOC for basic type MATMAS03
and following are some of the segments, their versions and release.
Segment type  Version Release
E1MARAM         005    620
E1MARMM         002    620
For segment type E1MARAM and E1MARMM we want to use following version and release
keeping rest of the things same.
Segment type  Version Release
E1MARAM         004    46C
E1MARMM         001    46A
Is it possible to create idoc with these versions for segment E1MARAM and E1MARMM.
I am using FM MASTER_IDOC_DISTRIBUTE.
Rgds,
Fattesingh

Hi all,
Thanks for your replies.
EDISDEF might be useful, but I'm not sure how to use it at the moment.
I am supplied in the code a structure of type EDIDC, which has the following values (not all are listed)
MANDT     C     3      308
DOCNUM     N     16      0000000000002050
DOCREL     C     4      640
STATUS     C     2      03
DOCTYP     C     8
DIRECT     C     1      1
RCVPOR     C     10      SUBSYSABAP
RCVPRT     C     2      B
The above represnets a particular IDoc being processed (see DOCNUM and DOCREL)
The default code then uses a FM to get the segment data based on the DOCNUM.
CALL FUNCTION 'EDI_SEGMENTS_GET_ALL'
      EXPORTING
           DOCUMENT_NUMBER         = I_EDIDC-DOCNUM
      TABLES
           IDOC_CONTAINERS         = I_EDIDD
      EXCEPTIONS
           DOCUMENT_NUMBER_INVALID = 1
           END_OF_DOCUMENT         = 2
           OTHERS                  = 3.
Does anyone know of any FM that returns a EDID4 (has 30 char segment version) structure instead of a EDIDD structure (27 char seg def)?
And the value EDIDC-DOCREL (SAP Release for IDoc)  e.g.
<b>640</b>
does not match up with values available in EDISDEF-RELEASED (IDoc development: Release of segment definition), e.g.
<b>30F
40A
45A
</b>
How can I find if the segment definitions are
E2EDKA1 or
E2EDKA1001 or
E2EDKA1002 or
E2EDKA1003

Similar Messages

  • IDoc - Get Segment Definition or Version in Code

    I'm working on the ABAP-PI Port, created a FM based on FM OWN_FUNCTION now.
    In my FM, there is a call to a function
    CALL FUNCTION 'EDI_SEGMENTS_GET_ALL'
    that retrieves all the segment data for a particular IDoc number.
    However, it returns only the segment name EDIDD-SEGNAM and not the segment definition.
    Example:
    Value returned: "E1EDKA1" ( EDIDD-SEGNAM , 27 char long field)
    I'm actually looking for the Segment Definition that goes up to 30 characters long.
    Value I need to be returned: "E2EDKA1001" - has the extra 3 digits at the end that represents the Version.
    If you go to WEDI, Development > IDoc Segments, You can see that the Segment definitions belong to a data type EDISEGDEF (30 characters long).
    Does anyone know how I can get this programmatically?
    The IDoc file downloaded by the FILE port stores the 30 char Segment Definition in the file
    Using the ABAP-PI it only returns the segment name (27 char)

    Hi all,
    Thanks for your replies.
    EDISDEF might be useful, but I'm not sure how to use it at the moment.
    I am supplied in the code a structure of type EDIDC, which has the following values (not all are listed)
    MANDT     C     3      308
    DOCNUM     N     16      0000000000002050
    DOCREL     C     4      640
    STATUS     C     2      03
    DOCTYP     C     8
    DIRECT     C     1      1
    RCVPOR     C     10      SUBSYSABAP
    RCVPRT     C     2      B
    The above represnets a particular IDoc being processed (see DOCNUM and DOCREL)
    The default code then uses a FM to get the segment data based on the DOCNUM.
    CALL FUNCTION 'EDI_SEGMENTS_GET_ALL'
          EXPORTING
               DOCUMENT_NUMBER         = I_EDIDC-DOCNUM
          TABLES
               IDOC_CONTAINERS         = I_EDIDD
          EXCEPTIONS
               DOCUMENT_NUMBER_INVALID = 1
               END_OF_DOCUMENT         = 2
               OTHERS                  = 3.
    Does anyone know of any FM that returns a EDID4 (has 30 char segment version) structure instead of a EDIDD structure (27 char seg def)?
    And the value EDIDC-DOCREL (SAP Release for IDoc)  e.g.
    <b>640</b>
    does not match up with values available in EDISDEF-RELEASED (IDoc development: Release of segment definition), e.g.
    <b>30F
    40A
    45A
    </b>
    How can I find if the segment definitions are
    E2EDKA1 or
    E2EDKA1001 or
    E2EDKA1002 or
    E2EDKA1003

  • IDOC - add new field in in existing segment definition

    Hi,
    For segement type say Z1MARA1 if we need to add a new field in segement definition say Z2MARA1 SAP is not allowing to add new field if we tried to cancelled the realsed 30E it not allowing since the SAP realease which we are working is 640 so only we can create new segement defination with version Z2MARA1001 with new field added but issues is that the partner Profile for outbound parameters the Segment release in IDOc Type is 31I so if we change this segment release in IDOC type to new version ie., 640 then it will pick all the new segement associated with it due to which the the format in which we pass the segements to third party will change so is there any way to use the existing segment definition which is release 30E & add addition field to it. Only one way I found is that when i try to cancel the released message is trigger so in the debug if I make it success it allows to add new field in existing segment definition but which is wrong way of doing is there any way we can used same segment definition & add new field without adding new version & new released.
    Thanks in advance.
    Rajeev

    Varma,
    I know that we can add new segement with new version my question is existing segement definition can we add a new filed because in partner profile we specified release 31i so even we create new segement type then version will be 640 so it will not pick the latest version.
    Thanks
    Rajeev

  • Why T-RFC Port canu2019t handle Partner Profile Segment Release Version.

    Can TRFC Port handle the segment release of each of the segment if configured in Partner Profile.
    As per sap, in Partner Profile,  if we maintain the two field "Seg. Release in IDoc Type"  and "Segment Application release" to a SAP Release lower than the current release version then all the segment populated by the IDoc adapter should be populated as per the lower release structure.
    For test Purpose I have created two IDoc using File Port and TRFC port and for both of then I have maintained the Partner Profile Fields  "Seg Release in IDoc Type" and "Segment Application Release" as 46C although the latest release is 701. 
    In the IDoc there is a custom segment ZE1PMX with two Version Release 46C & 701. 46C is having 7 Fields and 701 is having 9 fields.
    Test using TRFC Port: Using TRFC port the IDoc that is getting generated are not having the segment structure of release 46C instead of that it is taking the segment structure of latest release 701 which is having 9 fields.
    Test using File Port: Using File port the IDoc that is getting generated are having the segment structure of release 46C instead of latest release 701 which is having 7 fields which is desirable.
    I have also done these testing in other SAP release like 700 and found that while saving the partner profile with a lower  segment release number it throws an warning message as "Segment definitions missing for release 620/620" and IDocs are not getting generated with a error status Code 2 "Segment E1BPMEPOITEM1 is unknown in Release 620 /". But from release 701 sap allows us to save the Partner Profile without warning and also creates the IDoc without error but the segments takes the latest release structure instead of the release maintained in the Partner Profile.
    If any one has already done some investigation on this issue please let me know why there is a difference in TRFC Port and File Port. Is there any other configuration that is missing for T-RFC Port.

    Hi Dennis
    This forum is focused on [SAP NetWeaver Gateway|http://www.sdn.sap.com/irj/sdn/gateway], i.e. the (relatively) new OData/REST-orientated mechanism to expose ERP data and functions.
    You're talking about the ('classic') Gateway i.e. the service that runs on port 33<SYSNR>. As a result, you are better off posting in the forum that covers that Gateway, i.e. [Application Server Infrastructure|SAP NetWeaver Application Server;
    The names do make it confusing, for sure.
    Good luck!
    dj

  • XI IDOC missing segment definition in type E1LFM1M

    Hi experts,
    we have recently upgraded our ERP system to NW 702 EH5. As aresult a new segment definition was added to our segment type E1LFM1M ( segment def. E2LFM1M007). The problem we are havign is that our XI system is still running on NW700 and it doesnt have this segment defintion. Since the upgrade we are getting an error in transaction RFC complaining about the new segment definition E2LFM1M007 everytime we try to send a vendor from ERP to SUS using BD14. Is there a way we can deactivate the new segment definition E2LFM1M007 in segment type E1LFM1M?
    Thanks,
    Abdul.

    Hi Abdul,
    Actually it does not matter what are your systems' versions, PI can always handle an IDoc properly. All you need to do is perform the following steps in your PI system:
    1. Log on to ABAP stack, go to t-code idx2, find your ECC system and that particular IDoc (I believe this will be CREMAS) and delete its metadata.
    2. Log on to Enterprise Services Repository, find your SWCV where the IDoc definition was loaded, and load it again from your ECC system, then activate the change.
    3. If necessary, also adjust the message mapping to use/not use the new segment. Activate your changes.
    Once you have these steps completed, you are ready to retest your scenario and say goodbye to the error.
    Hope this helps,
    Grzegorz

  • How to cancel the release of the current segment definition-WE31-IDOC?

    Hi Experts,
    Am trying to add a new field to a existing custom segment type/defination. This segment type is already using in the system.
    So, went to WE31 and pressed the PENCIL button for changing/adding my new field, but am geting the below message,
    (1)pls let me know that does it mean CANCEL the release (Menu>Edit>Cancel Release)? if so, Can I go ahead and use this CANCEL the release? do I need to take any pre-requisites as this segment is already relased?
    (2)But, you know there is another option saying 'ADD VERSION-Shift+F5', if I choose this option, its also taking me to a screen where in I can add new fields so which is correct option for me is it either (1) or (2)?
    Current segment definition Z_segment_defination can no longer be changed
    Message no. EA666
    Diagnosis
    The current segment definition Z_segment_defination of segment type Zsegment_type is already released.
    System Response
    The segment definition cannot be changed.
    Procedure
    You can either add a new segment definition or cancel the release of the current segment definition.
    Thank you

    so i tried to CANCEL the release by goiong menu pathEdit-->Cancel the release, but am getting the below error, How to fix it to add my new field?
    Error while resetting release of segment
    Thank you

  • IDOCS: Segment Definition and Segment Type

    Hi Gurus,
    We are working on IDOCs and trying to send a Location Master IDOCs to Third party system.
    1. In the IDOC print preview we are in a position to see the IDOC segment type Ex: E1TPLOC but customer is asking for Segment definition E2TPLOC.
    When we go through the documentation:
    u2022     Segment Type consists of Segment definition with Version and Release.
    u2022     Segment Definition will contain the Field names
    u2022     E1TPLOC, E1TPDLH, E1KNVAM, E1TPTRM & E1TPSHH Segment types with concerned Segment definitions are
                         E2TPLOC,E2TPDLH, E2KNVAM
    How to see the Segment definition types?

    Hi,
    You can see the documentation in the transaction WE60 by giving the IDOC Basic type and extension if you have any.
    E1 and E2 are the same, when you see the definition of the segment the naming convention will be E2 and when populating the data it will be E1.
    I believe he is asking the segment definition alone, you go to WE60 transaction and give the inputs and click the parser button and that will give you the definition of the idoc and which you can share it with your partner.
    Thanks,
    Mahesh.

  • IDOC Segment Definition received instead of Segment type

    Hello Folks,
    When i send a Z Idoc Segment from A to B System, It is successfull from A System, but in B System sometimes its erroringout because in the inbound idoc Segment Definition is coming instead of Segment type.
    For Example
    From A System I have sent Z1P0002 segment
            B System I have received Z2P0002000(Which is the segment definition for Segment type Z1P0002)
    Any inputs to above problem?

    Hi,
    The problem may be due to system B using a older release version of the IDoc. In those scenarios, even though your IDoc type is recognized, it may not be possible for the reciever to determine the right segment version of the reciever.
    There are options in the WE20 partner profile configuration, Field Segment release in IDoc type and Segment Appl. rel. which enable the partner system preventing from erroring out.
    BR/Yogesh
    Edited by: Yogesh Surender on Jun 1, 2009 12:34 PM

  • Segment Release version issue - ECC6 to older ver.

    Hi
    Our system was recently upgraded from ECC5 to ECC6 and we are facing an issue with one of the interfaces that is connected directly to the R/3 System.
    This issue is realted to an outbound interface and it used to work fine when we were on ECC5. The message we are sending is a bespoke extension based on basic type DELVRY03. The segment E1EDL24 have new fields added to them in the 701 release version compared to the 620 version which was the higest available on ECC5.
    I tried reducing the IDOC segment release version to 620 and 46C in the partner profile, but the message received by the thirdparty still contains the new fields which is causing an issue at their end.
    I would appreciate if you could provide me some guidanace on how to appraoch this issue.
    Thanks & Regards
    Praveen

    Hello Guy's,
    We have recenlyt upgraded our quality system to ECC6.
    I am also facing the same issue, As per my unnderstadning if I put segment release in WE20 then in ALE communication Layer Idoc should remove the fileds which are not intended for the given release. For example E1EDP01 is having highest release 008 for 701 release. If I set 40A in partner profile the Idoc should generate with fileds only available in 40A release i.e. version 003,but SAP is filling all thefilds which are available in701 relase.
    I don;t understand why SAP has given such a functionality though it actually not filter the data at communication layer!!.
    Could you please let me know did any of you really see the difference when you use segment release in WE20 when using PI as receiver? I did sevaral test for MATMAS, ORDERS found this segment release is useless.
    If you have applied any workarounds(other then updating receiver system mapping) please let me know. I think is there any modification in ECC6???
    Edited by: Naresh Reddy K on Jun 7, 2010 3:30 PM

  • Add IT0006 custom fields for segment definition E1P0006 basic type HRMD_A06

    Hello!  I am am trying to determine how to bring in our custom fields from IT0006 into our IDOC's for message type HRMD_A basic type HRMD_A06 without performing a custom SAP modification.  I was able to create a new segement definition called Z1P0006 and replace the SAP standard E1P0006 IDOC segment defintion in table T777D for infotyp 0006 to Z1P0006.  However, I receive a message that I must not maintain this IDOC segment manually and instead you must maintain infotypes and their individual elements by using the transactions for processing infotypes: PPCI or PM01 (Infotype copy transaction for personnel administration). 
    Does anyone know of a way to bring in the new custom infotype fields from i.e. reimport the table structure for IT0006 into the segment definition without a custom SAP modificaiton?  I would really appreciate any help on this topic!
    Thanks!
    Holly

    unfortunately, the standard do not provide the infotypes for the HR-TM (Time Management), that
    are between the structures i must send in the other system sap.
    Ok, I have never delt with Time data in HRMD_A. Probably this is the case then
    Ok,now i've checked the filter in BD64 and the tables BDCP2, CDHDR and CDPOS but it seems
    all correct!!
    By checking Filters I mean that confirm if you have added Time Infotypes there (just
    making sure). If data is appearing in BDCP2 that means there is no problem in Change
    pointer creation, Just ruling out possibility.
    Try with an user exit it's a good idea, but why in the PFAL the idoc (with the custom segments)
    is created without problems and in the BD21 no??? This is very strange
    1) Well BD21 uses the Function module (TBDME for HRMD_A) which read change pointers and
    create IDOCs. So now if you have extended Segment you have to add your population code
    here somewhere.
    2) PFAL is Push program, my assimption here is you have wriiten some piece of code to
    populate Additinal segments data here? Otherwise IDOC will not be populated
    automatically.
    Let me know what you think.

  • Segment Definition Name in IDOC

    Hi Gurus,
       I am new to IDOCs.
       I need to create a new segment type in WE31.Its name should be say Z1TEST and I want to have the segment definition name to say Z2TEST.Currently the segment definition name is blank and disabled and when I save the segment type, the segment definition name, by default , comes as Z1TEST000(as per my example).
       Can u please suggest any ways of putting my own naming in the segment definition.
    Thanx in advance.

    hi,
    Defining Segments
    Use
    This is where you define segments so that you can assign them.
    Procedure
    From the Commission System screen, choose Master Data -> Segment Assignment -> Segments -> Maintain.
    Choose a segment type and an effective validity date.
    Choose Save.
    Result
    You have created a representation of the commission calculation of relevant data from the external policy management system. You can now assign the segments.
    A data segment contains a collection of fields from SAP tables. A data segment may hold master data or data from an application document. A segment is a collection of all the records of one type. A segment may contain data from a single SAP database table, or it may combine related data from multiple tables.
    A checksum is basically a one-way hash of whatever data arguments you supply.
    Regards,

  • Segment definition in an IDOC type

    Hi,
    What does Maximum number and Minimum number stand for in an segment definition within an IDOC type? I think there are two options.
    1. the occurence number of the segment type in an IDOC type defintion
    2. the occurence number of the segment data of a special IDOC
    1 or 2. Please suggest ... It will better if there is any example for me to understand it. Thanks.
    Regards

    Option 2 is correct from my observation.

  • TEMPORARY SEGMENTS에 대해서 (ORACLE VERSION: 7.X ~ 8.1)

    제품 : ORACLE SERVER
    작성날짜 : 2003-11-07
    TEMPORARY SEGMENTS에 대해서 (Oracle version: 7.X ~ 8.1)
    ===========================================================================
    이 문서에서는 sort작업의 수행과 관련하여, memory상의 할당 및 disk상의
    temporary segment 생성 등에 관하여 살펴보았다.
    특히 temporary segment를 temporary type의 tablespace에 생성하도록 지정한
    경우에 대해서 자세히 살펴보았으며, 그러한 작업시 user가 확인할 수 있는
    dictionary정보 등을 기술하였다.
    이 문서는 아래와 같이 7가지 part로 나누어 설명하였으며, Oracle 7에서
    Oracle 8i에 모두 적용되는 사항이다.
    1. temporary segment가 생성되는 operation
    2. 메모리 할당
    3. user별 지정
    4. tablespace의 space management
    5. permanent tablespace를 사용하는 경우
    6. temporary tablespace를 사용하는 경우
    7. guideline
    8. temporary segments에 대한 정보 확인
    1. temporary segment가 생성되는 operation
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    temporary segment를 생성하게 되는 sort operation은 다음과 같이 정리할 수
    있다.
    - index생성
    - ORDER BY나 GROUP BY
    - SELECT문장에서 DISTINCT function
    - UNION, INTERSECT, MINUS operation
    - Sort-Merge joins
    - analyze command
    이 외에도 unique나 primary key를 생성하거나 enable시키는 문장의 경우
    sorting을 위해 temporary segment를 사용하게 되며,
    CREATE TABLE AS SELECT나 CREATE INDEX의 경우 table이나 index가
    만들어지는 과정중에는 segment type이 temporary 로 나타난다.
    CREATE TABLE이나 CREATE INDEX 문장이 완성되어 table이나 index가 완전히
    생성되면 type이 table과 index로 변경된다. 이러한 CREATE TABLE문장이나
    CREATE INDEX 문장이 도중에 space부족으로 실패하면, user의 temporary
    tablespace가 아닌 table이나 index를 생성하는 tablespace에 temporary
    segment위한 공간이 부족하다는 오류가 발생하는 것이다. 물론, CREATE INDEX시
    이렇나 temporary segment외에도 sort를 위한 temporary segment는 user의
    temporary tablespace에 생성된다.
    2. memory allocation
    ~~~~~~~~~~~~~~~~~~~~
    각 session별로 첫번째 sort가 수행되는 순간 memory가 할당되고 sort가
    진행된다. sort가 수행되기 위해 필요한 영역이 점차 증가하다가, sort가
    완전히 끝나거나 SORT_AREA_SIZE 크기에 도달하면 더 이상 memory를
    할당하지 않는다.
    이렇게 SORT_AREA_SIZE initialization parameter는 하나의 sort에 의해
    사용되어질 real main memory의 최대 크기를 나타낸다. 이 parameter의
    default값은 64K bytes이며, 이 parameter에 의해 만들어지는 sort memory
    영역은 다음과 같이, server configuration에 따라 다른 부분에 위치하게 된다.
    (1) dedicated server configuration
    sort area가 Program Global Area (PGA)에 할당된다. PGA는 이 외에도
    user 권한 등을 포함한 session information, cursor status, stack
    space 등을 포함한다.
    (2) multi threaded server (MTS) configuration
    sort area가 User Global Area(UGA)에 할당된다. 이 UGA는 SGA의 한
    구성 요소인 shared pool 내에 위치한다.
    sort가 완전히 끝이 나면, sort영역은 SORT_AREA_RETAINED_SIZE parameter에
    의해 정해진 memory크기로 줄어든다. 즉, SORT_AREA_RETAINED_SIZE는 다음
    sort를 위해서 미리 확보해 두는 영역이다. 만약 SORT_AREA_RETAINED_SIZE가
    0으로 설정되면 같은 process라도 매번 sort 시마다 새로 memory를
    SORT_AREA_SIZE 만큼 할당하게 되는 것이다.
    SORT_AREA_RETAINED_SIZE의 default 값은 SORT_AREA_SIZE와 같아서, 이전
    sort 시에 사용된 memory 부분이 항상 다음 sort 시에 그대로 이용된다.
    process가 완전히 종료되면 이 영역도 해제되어 MTS라면 shared pool 영역으로
    반환되고, dedicated 방식인 경우 operating system 영역으로 반환된다.
    이 두 initial parameter는 session level에서도 수정이 가능하다, 예를 들어
    두 paramter를 모두 1m로 설정하는 명령은 다음과 같다.
    SQL>alter session set
         sort_area_size = 1024000
         sort_area_retained_size=1024000;
    만약 앞으로 새로 생성되는 모든 session에 대해서 영향을 받도록 하려면
    alter system 명령을 이용하여야 한다. 예를 들면 다음과 같다.
    SQL>alter system set
         sort_area_size=102400 deferred
         sort_area_retained_size=102400 deferred;
    3. user 별 지정
    ~~~~~~~~~~~~~~
    2번에서 설명한 SORT_AREA_SIZE의 memory 외에도 추가적으로 sort 시 공간이
    필요하다면, 이 때는 이미 sort가 된 data들은 disk에 쓰여지고, memory 내의
    sort 영역을 비운 다음 그 영역을 새로운 sort되어져야 할 data들이 사용하도록
    하면서 전체 data를 sort한다. 물론 이렇게 부분적으로 sort가 된 단위들은
    나중에 다시 merge 단계를 거쳐 전에 data가 모두 sort가 되도록 한다. 이와
    같이 일부 정렬된 data들이 disk에 씌여지면 temporary segment가 생성되게
    된다.
    이렇게 정렬된 data들이 임시로 씌여지는 temporary tablespace는 각
    user마다 생성 시 지정되며, 임의로 변경 가능하다.
    예를 들면 다음과 같다.
    SQL> create user scott identified by tiger
         default tablespace users
         temporary tablespace temp;
    SQL> alter user scott temporary tablespace newtemp;
    4. tablespace의 space management
    (dictionary managed vs. locally managed)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    tablespace는 extent 단위로 space를 할당하는데, free space와 used space를
    관리하는 방법은 dictionary managed 방식과 oracle8i에서 새로 소개된
    locally managed, 이렇게 두가지로 구분될 수 있다.
    locally managed tablespace에 관한 자세한 사항은 <Bul:11860>을 참조하도록
    한다.
    (1) dictionary managed tablespace
    이것은 oracle8.0과 그 이전 version에서, tablespace에서 extent를 할당하고
    반환하는 방법으로 사용되는 것이다.
    data dictionary table에 extent를 할당하거나 해제함에 따라 변경되는
    extent정보를 저장한다. user에게는 dba_extents나 dba_free_space와 같은
    view를 통해 조회가능하다.
    이러한 형태의 tablespace내에 저장되는 segment는 storage option인
    initial, next, pctincrease 에 의해 필요한 extent를 free space로 부터
    할당받아가게 되는데 temporary segment를 위한 tablespace라면, 그 tablespace
    (주로 TEMP라고 이름지어짐) 에 생성되는 모든 temporary segment는
    tablespace의 default storage의 값을 segment별로 적용하게 된다.
    (2) locally managed tablespace
    이것은 8i에서만 사용가능한 방법으로, tablespace 자체가 자신의 extent에
    대한 정보를 가지고 관리한다. locally managed tablespace에 속한 각
    datafile들은 각 datafile마다 bitmap을 가지고 있어서, 각 block의
    free와 used상태를 유지한다. bitmap의 각 block은 하나의 block 혹은
    하나의 block의 group을 나타낸다.
    이렇게 extent를 자신이 관리하는 tablespace는, 일정한 크기의 extent
    size를 유지하는 UNIFORM형태나, system에서 자동으로 가변적인 extent
    size를 결정하는 AUTOALLOCATE방식, 두가지로 지정 가능하다.
    이러한 형태의 tablespace는 INITIAL, NEXT, PCTINCREASE, MINEXTENTS
    등의 storage option을 사용할 수 없다.
    locally managed tablespace는 다음과 같은 이점을 가진다.
    - extent를 local형태로 관리하면, recursive space management operation을
    줄일 수 있다. 즉 dictionary table에 대한 조회나 dml을 피할 수 있다.
    - 자동으로 bitmap만을 통해서, free space가 인접해있는지가 확인이 되기
    때문에 extent를 coalescing할 필요가 없어진다.
    tablespace를 생성할 때는 위의 두 형태 중 하나로 tablespace를 생성하여야
    하며, alter 문장을 통해서 형태를 변경할 수는 없다.
    5. permanent tablespace에 temporary segment 생성
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    일반적으로 TEMP라는 이름을 가지는 user가 temporary tablespace로 지정하는
    tablespace는 temporary나 permanent 중 하나로 지정가능하다.
    permanent로 지정하게 되면 sort가 필요할 때마다 temporary segment를
    tablespace에 생성하게 되고 sort가 끝나면 SMON이 이 segment를 해제한다.
    일반적으로는 이렇게 permanent로 지정을 하여도 db user의 temporary로
    지정된 tablespace에는 일반 user의 schema object를 생성하지는 않지만,
    실제적으로는 생성하여도 생성된 object의 사용에 지장은 없다.
    그런데 permanent로 지정하게 되면 다음과 같은 단점이 있다.
    - transaction level로 sort가 필요할 때마다 temporary segment를 생성하게
    되므로 여러개의 temporary segment가 생성되어 진다.
    - temporary segment가 자주 생성되고 다시 없어짐에 따라 fragmentation이
    발생할 가능성이 크다.
    - SMON이 sort가 완료되면 temporary segment를 free시키는 역할을 하는데,
    sort segment가 매우 많이 생성되게 되면, SMON이 그 segemnt를 지우는 데
    많은 시간을 할애하게 된다. 이렇게 되면 전체적인 db performance에
    영향을 주게 된다.
    permanent type으로 temporary segment를 위한 tablespace를 생성하는
    문장의 예를 기술하였다.
    (Oracle 8.1에서는 이렇게 선언하면 default로 dictionary-managed 형태로
    생성된다)
    SQL>create tablespace temp datafile '/oracle/oradata/temp01.dbf'
         default storage(initial 1m next 1m pctincrease 0);
    Oracle 8.1이상에서 temporary segment를 위해 locally-managed permanent
    tablespace를 생성하는 예문은 다음과 같다.
    단, 반드시 UNIFORM extent size만이 가능하다.
    SQL>create tablespace temp datafile '/oracle/oradata/temp01.dbf'
         extent management local uniform size 1m;
    6. temporary tablespace에 temporary segment 생성
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Oracle7.3부터 sort operation을 더욱 효율적으로 사용하기 위해 temp
    tablespace를 명시적으로 temporary로 지정하는 것이 가능하게 되었다.
    이렇게 함으로써, temporary tablespace에 sort space(temporary segment)를
    할당하고 해제하는 작업의 반복을 피할 수 있으며, 특히 OPS 환경에서 성능 향상에
    도움이 될 수 있다.
    이러한 형태의 tablespace에 생성되는 temporary (sort) segment는
    db startup 후 처음 수행되는 sort 작업이 memory 내의 sort를 마치고, disk로
    내려쓸 때 생성된다. 이렇게 일단 temporary segment가 생성되면 이 segment는
    db가 restartup될 때까지 줄어들거나 해제되지 않는다. sort가 필요한
    다른 transaction들은 미리 생성된 temporary segment를 공유하게 되나,
    extent를 공유하지는 않는다.
    sort 작업은 사용 가능한 extent가 존재하지 않으면 새로운 extent를 할당하면서
    temporary segment를 늘려나가며, 이미 설명한 바와 같이 db가 running되어
    있는 동안은 줄어들지 않는다. 그러나 sort가 끝나게 되면 사용한 extent를
    free로 표시하여 다른 transaction이 재사용 가능하도록 한다. 결국 temporary
    segment는 무한정 계속 늘어나기보다는 일정한 size 정도까지 늘어난 후에는
    extent 별로 재사용되어지는 것이다.
    이러한 temporary tablespace 내의 sort segment에 대한 정보는
    Sort Extent Pool (SEP)에 저장하며, 이것은 SGA 내에 위치한다.
    temporary tablespace를 이용하여 sort를 수행하여야 하는 모든 문장은
    SGA 내의 이 SEP를 확인하여 free extent를 찾아낸다. 이렇게 각 operation 후에
    extent가 할당, 해제되는 과정이 필요없기 때문에 기존의 permanent
    tablespace에 temporary segment를 생성하는 것보다 db의 전반적인 속도가
    향상되는 것이다.
    앞에서 이 temporary tablespace 형태가 특히 OPS에서 성능 향상을 가져올
    수 있다고 하였는데, 그 이유는 이 SEP에서 할당되는 extent는 다른
    instance끼리 같은 extent를 사용하는 경우는 없도록 instance id를 이용하여
    할당받도록 하여 항상 같은 instance에만 할당이 된다.
    즉, ping이 발생할 확률이 줄게 되어 속도의 향상을 가져오게 된다.
    temporary tablespace 내의 sort segment의 해제 작업은 db shutdown 시에
    자동으로 이루어지는 것이 아니고 db startup 시에 SMON에 의해서 수행된다.
    database가 open되고 나면, temporary tablespace에서 extent를 해제하여
    coalescing 작업을 수행한다. 이러한 작업으로 인해 db가 startup된 직후
    SMON이 CPU를 많이 사용하는 경우가 발생하는 것이다.
    만약에 temporary tablespace의 NEXT값이 너무 작게 지정되어 매우 많은
    갯수의 extent가 만들어지게 되면, SMON의 이러한 작업으로 인해 사용가능한
    CPU resource가 거의 없어짐으로 인해 db 사용에 문제가 야기될 수 있다.
    tablespace를 temporary로 지정하는 문장의 예는 다음과 같다.
    (Oracle 8.1에서는 이렇게 선언하면 default로 dictionary-managed 형태로
    생성된다.)
    SQL>create tablespace temp datafile '/oracle/oradata/temp01.dbf'
    default storage(initial 1m next 1m pctincrease 0) temporary;
    Oracle 8.1 이상에서 temporary segment를 위해 locally-managed temporary
    tablespace를 생성하는 예문은 다음과 같다.
    단, temporary tablespace에서는 반드시 UNIFORM extent size만이 가능하다.
    SQL>create temporary tablespace temp
    tempfile '/oracle/oradata/temp01.dbf'
    extent management local uniform size 1m;
    이렇게 temporary tablespace로 생성된 tablespace에는 table이나 index와
    같은 permanent한 schema object는 생성될 수 없다.
    dictionary-managed temporary tablespace의 경우는 다음과 같은 문장에
    의해 permanent로 변경이 가능하다.
    SQL> alter tablespace temp permanent;
    7.guidelines
    ~~~~~~~~~~~~
    - temporary segment가 자주할당되고, 해제되는 것을 피하고자 한다면 temporary
    type의 tablespace를 사용한다.
    - 하나 이상의 temporary tablespace를 사용하는 것도 동시에 sort가 발생하는
    경우 도움이 된다. 즉 db user마다 temporary tablespace를 달리 지정하라는
    것인데, 이것은 db user별로 업무 분할이 잘 되어 있는 OPS에서 특히 유용하다.
    그 외에도 각 tablespace를 다른 disk에 위치시키는 경우 속도 향상을 가져올
    수 있고, db user별로 업무가 나뉘는 경우 각 업무에 필요한 sort space를
    따로 관리하는 장점이 있다.
    - temporary tablespace의 default storage를 지정하는 경우, INITIAL은 NEXT와
    같게 하고 pctincrease는 항상 0으로 한다.
    pctincrease가 0이면 temporary tablespace의 모든 extent는 같은 크기의
    조각을 가지게 되고, 이렇게 되면 coalescing이 수행되지 않아도 새로운
    sort작업이 기존에 발생한 extent를 그대로 이용할 수있게 된다.
    8. temporary segments에 대한 정보 확인
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    v$sort_segment view에서 sort segment를 포함하는 temporary tablespace를
    확인할 수 있다.
    extent_size     : extent의 크기, Oracle block갯수
    total_extents     : 빈 것과, 사용 중인 것 모두 합해 segment에 포함된 total
              extent의 갯수
    used_extents     : 현재 사용 중인 extent의 갯수
    free_extents     : 현재 free로 표시되어 있는 extent의 total갯수
    max_used_size     : 하나의 operation, 즉 한 transaction에 의한 한번의 sort와
    같은 작업을 위해 사용된 extent의 갯수 중 최대로 큰 경우
    현재 user에 의해 사용되어지고 있는 temporary segment 내의 공간을
    확인하려면, v$sort_usage와 v$session view를 이용한다.
    단, sort_usage는 sort 시에만 정보가 나타나는 것을 주의해야 한다.
    예를 들어 다음과 같이 조회할 수 있다.
    select s.username, u.tablespace, u.contents, u.extents, u.blocks
    from v$session s, v$sort_usage u
    where s.saddr=u.session_addr;
    USERNAME TABLESPACE CONTENTS EXTENTS BLOCKS
    SCOTT TEMP TEMPORARY 10 10240000

    You need to read Note:131299.1 available on Metalink.
    ALERT: Oracle Installer 8.1.X Hangs on Machines with Pentium 4 Processors.
    There is a patch available.

  • Segment definition is not enable?

    hi experts.....
    after entering t.code we31 segment created , next segment definition,last changed by, radio buttion released is not accepting any data?i.e. those are not in enable stage?

    As i remembered you no need to give definition of segment, when ever you give all the list of fields and dataelements and save it, automatically it will be displayed there.
    please give points for all useful answers and close thread if you satisfy with the answers.

  • How can I download standard definition versions of shows I already own?

    iTunes had a seizure so I had to quit out before it finished downloading everything.. when I turned itunes back on, it was no longer downloading the standard definition versions of the tv show I had just bought the season of, only the HD versions.
    How do I get the SD versions now?
    Why can't I go straight to Apple for a solution to this..? It seems ridiculous to ask the apple community for advice on fixing an issue that Apple themselves should be the ones fixing.

    It seems the policy of automatically downloading both HD & SD versions has changed. In future you'll get your preferred format, but the other should be available via iTunes in the Cloud.
    Go to Store > Purchased > TV Shows. Untick Download HD when available, then download the SD episodes you require.
    tt2

Maybe you are looking for

  • Headset microphone doesn't work with my MBP

    Hi there, I own a early 2008 MacBook Pro and a Sennheiser PC 350 G4ME. The micro of this headset doesn't work when I plug it into my MacBook Pro but it works on my old Toshiba laptop. The headset connection is made through two 3.5 mm jacks. So it sho

  • Frequent insertion of ["r;text"] where I entered ["text"]

    I am using RH7.  With annoying frequency I find ["r;text"] where I entered ["text"], like so: The replacement string has backward quotes as seen in my subject line.  Copy and paste, for some reason, does not bring them in here.  I have continually fi

  • Connecting PCI-6035E and SCB-68 and control a laser to turn on/off

    I have connected SCB-68 to a 15pin cable and connected to a laser. From computer I have connected PCI-6035E board to SCB-68 to control a Laser to turn on and off from a LabVIEW program. I have connected PIN#, 6,7, 14 from SCB-68 to 15pin connecter ca

  • Host Memory Consumed at VM for prime infrastructure 2.0

    Dear All, I have prime infrastructure 2.0 from 12 day ago i have logg on NCS (1. Message: CPU: 85 crossed down threshold: 90) and when see host memory from prime infrastructure VM i see that Host memory consumed so i make down time and increase the m

  • The valid OS user to install WLS 10.3 on linux

    Hi, Could you please let me know the appropriate OS user to use when installing WLS 10.3 I have joined new employer and find the instakklation done using Root user, we tried to create another and change the permissions however I guess this is not goo