Screen exit for me32k for header and for items
hi experts,
i need a screen exit from me32k to add subscreen in :
1. items
2. header
thanks in advanced,
dana.
Hi,
Just some information on screen exits:
Screen Exit:
How to implement screen exit for a SAP standard transaction
Introduction
SAP provides standard transactions to enter data into database. But a client may want to maintain some additional information in SAP other than what is provided.
To make provisions for this, additional screens have to be provided and additional fields must be added into appropriate database table.
To pave way for this, SAP has provided the option for screen exits. Usually, SAP provides the following:
An append structure in the database table with the new fields.
A subscreen area into the standard screen where the programmer can attach his subscreen of his own program with the new fields.
A function group under which the new subscreen has to be created with the new fields.
Function exits to synchronize the PBO and PAI of the standard SAP program with the PBO and PAI of the subscreen so that data can flow back and forth between the standard SAP program and the program written by the developer for the subscreen. These function modules also exist in the same function group under which the subscreen will have to be developed.
Finally, a linkage has to be done between the subscreen area of standard SAP screen with the custom subscreen constructed by the developer.
Typically, SAP provides an enhancement in which the developer can create an append structure, use the function exits to synchronize the PBO and PAI of the standard SAP program and the custom subscreen program, and make the necessary linking( as mentioned above in step 4. But, again, this is not a hard and fast rule. Linking in some case, is also done by configurations.) SAP also usually provides the name of the function group under which the subscreen has to be developed.
Necessary guidance about implementing a screen exit development is usually available in the Documentation section of the enhancement ( can be availed by transaction SMOD).
Pre-Requisites
The developer to work on screen exit should have essential knowledge on the following:
DDIC concepts, including the knowledge of append structure.
Concept of SAP Enhancements and implementing them using Projects.
Concept of function exits.
Knowledge on Module Pool including subscreens, Tabstrip controls etc.
Steps
Guidelines
So, a developer can follow the guidelines mentioned below to implement a screen exit to a standard SAP transaction, as and when required:
Find out the Required Enhancements
Go to SMOD. Press F4 in the Enhancement field. In the next popup window, click pushbutton SAP Applications. A list will appear that contains information on all the enhancements, categorized under functional areas. Developer must search for the enhancements relevant to his functional area of interest for e.g., Purchasing, Asset Accounting, etc.
Note down the enhancements. Then, come to the initial screen of SMOD and view the documentation of each enhancement to find out which one is required for your development.
Utilize the Enhancement in a Project
After you have found one, do as directed in the documentation. Generally, the steps are as follows:
Create a project using CMOD including your enhancement.
Create the append structure with new fields.
Go to the desired function group and create a subscreen with the new fields. Write PBO and PAI for the subscreen, if required.
Use the function exits in the enhancement to link the PBO and PAI of the subscreen with that of the main SAP program supporting the SAP transaction.
Maintain necessary linkage between the subscreen area of standard SAP program with the custom subscreen developed along with the custom program name. This can be done in the project (developed by CMOD including the enhancement) or outside as a part of configuration.
Activate the project.
Test to ensure that required functionality are met.
Case Study 1
Add three new custom fields for Asset master and maintain information for them
Requirement
Three fields in the legacy system have to be maintained in Asset master. These fields are:
Original Asset number 20 characters
Location 2 15 Characters.
Model no 20 characters
Location 2 should start with L.
Pre-Analysis
Finding out the Enhancement
As described above, the enhancement is determined. It was found, that enhancement AIST0002 will serve the purpose. It contains the following components (can be viewed by transaction SMOD):
Exit Type Description EXIT_SAPL1022_001 Function Exit Check of User-Defined Fields when Using Create and Change BAPI EXIT_SAPLAIST_002 Function Exit Transfer Data for User Subscreens in PBO. EXIT_SAPLAIST_003 Function Exit Transfer of User-Defined Fields to SAP Master Data Transactions CI_ANLU Customizing Include Include structure to add new fields
Studying the Function Exits
The function module level documentation for the function exits are then viewed from transaction SE37. The documentation clearly laid out for the purpose for their use:
EXIT_SAPLAIST_002
Function module Level Documentation
This function module is called by asset master data maintenance at the start of the dialog. (When changing, it is called after reading of the data from the database; when creating it is called after the transfer of the default values from the asset class and reference asset.) The purpose of the function module is to enable this function group to recognize the master data. For interpreting or controlling master data fields that are important for user fields, it is possible to transfer to global variables at this point, so that they can be recognized when the user subscreens are processed.
Import Parameters
Understanding
This function module is called at the PBO to pass the information retrieved from the database to pass them to the custom subscreen and its underlying program. Import parameter : I_ANLU will be populated with the values for user-defined fields which will be passed to the subscreen program. So, there must be some sort of variable assignment from I_ANLU.
EXIT_SAPLAIST_003
Function module Documentation: This function module is called by SAP asset master data maintenance after the screens are processed, but before saving. The purpose of the function module is to transfer fields entered on user sub-screens of SAP asset data maintenance to the database for updating. The export parameter for this function module is:
Understanding
This function module will be used to transfer the user entered data in the subscreen fields to the main SAP program, which will then be saved into the database.
Studying the Documentation of the Enhancement
The enhancement documentation (as is viewed from the initial screen of SMOD] also supports the idea. Moreover, it informs that we need to develop a subscreen under function group XAIS. This is the function group under which the two function exit modules also exist. So, if the custom subscreen refers to the global data of the function group XAIS, then those values will also be available to these function exits as well.
Going to SE80 and viewing the function group XAIS helps us to inform that there are three DDIC tables declared for it:
Deciding the Final course of Action
After making all the investigations, the final course of action was determined.
SrlNo Step Justification
A project has to be created using transaction CMOD where the enhancement AIST0002 will be included.
Customizing include CI_ANLU has to be created with the custom fields demanded When CI_ANLU will be developed, the custom fields will get appended to the database table ANLU. Also, these fields will be used to create screen fields in the new subscreen.
A custom subscreen, say, 9000 will be developed under function group XAIS. The screen group for the screen will be CUST (or any name). The three custom fields added to table ANLU (by creating CI_ANLU) will be used to create new fields in the screen.
In the PAI of the subscreen, validation for Location to start with L will be added. The subscreen with three new fields has to be developed so that it can be attached to a subscreen area of the asset master screens.
In the custom include of the function exit module EXIT_SAPLAIST_002, the following code will be written:-
ANLU = I_ANLU. I_ANLU is the import parameter of this FM. The value is assigned to the global variable ANLU, referring which the three new subscreen fields are developed. So, data retrieved from database table ANLU will be passed to this FM as I_ANLU by the standard SAP main program. The value will be taken and passed to the global variable of the function group XAIS, so that the three custom fields (referring to ANLU of XAIS) get populated.
In the custom include of the function exit module EXIT_SAPLAIST_003, the following code will be written:-
E_ANLU = ANLU. The changed values in the subscreen fields exist in global variable ANLU for the function group XAIS. This function exit module will pass the data back to the SAP main program as E_ANLU.
Proper linkage/configuration has to be done so that the new subscreens get linked to the appropriate subscreen area of the Asset master screen. This has to be done otherwise, the new custom subscreen will not be displayed in the Asset master screens.
Development
Creating a Project to include the enhancement
Go to transaction CMOD and create a project.
Enter a description for the project. Then, click on the pushbutton Enhancement Assignments in the Application Toolbar.
Enter the name of the enhancement and Save.
Go to Components.
Creating Custom Include for ANLU
The screen shown below will appear, showing all the enhancement components under the assignment AIST0002. Double-click on the name of the Include Structure to create it.
Create the include structure with three new fields, as required. Then, save and activate it.
Develop the subscreen and the program
Go to transaction SE80. For the function group XAIS, create a new subscreen 9000.
Create it as subscreen.
Then, go to the Layout of the screen and create three new fields from Database table ANLU.
Drag the fields in the screen body and place them.
Then, save and activate the screen and come back to screen flow editor.
Create the PAI module to add validation for field Location 2, as required .
Activate the whole function group and come out.
Write code in the Function Exits to synchronize the programs
Now, code has to be written in the function modules EXIT_SAPLAIST_002 and EXIT_SAPLAIST_003 so that data flows to and fro between the main SAP program and custom subscreen program. For that, go back to transaction CMOD and change the function exits.
Write code in the function module EXIT_SAPLAIST_002 called once at the beginning of the transaction:
Write code in EXIT_SAPLAIST_003 to pass the data from the subscreen to SAP main program.
Then, activate everything the whole project and come out.
Complete the configuration to link the subscreen
The development portion is complete. Now, linking of the subscreen has to be done with the subscreen area of the main program. In most of the cases, this linking can be done in the enhancement itself. But, here, requirement is a bit different. It is done by configuration using SPRO.
Assets are created under Asset class. And for each asset class, there is a layout assigned to it. For a layout, there are multiple tab pages assigned to it. And, for each tab page, there are multiple screen groups/field groups assigned.
Here, the requirement is to create these three custom fields in the tab page General of asset master screen ( AS01/AS02/AS03/AS91).
Determine the Layout
To achieve this, first of all, we need to find out which layout is assigned to asset class 1000.For that, go to transaction AOLK( information has to be obtained from functional consultant).Select the Asset Class 1000 and click on folder General Assignment of Layout.
Here, for Asset class 1000, for all the user groups, tab layout SAP is assigned. Since layout SAP cannot be changed, it has to be copied and manipulated to include our screen group. Later, the new layout has to be assigned over here.
Create new tab layout
Go to transaction AOLA. Copy the tab layout SAP to create another layout, say, YSUB.
System will copy all the settings and will inform you about that.
Select your newly created layout and double-click on the folder Tab page titles.
You want to put your custom fields in the tab page General. So, select this tab page entry and double-click on the folder "Position of Groups".
Here, all the field groups currently residing in the tab-page General are shown. Add an entry for your newly created fields.
Select the group box from the list. An entry will come with U padded with the custom subscreen prepared by you.
Then, save and come out.
Assign the new Layout to Asset Class
Now, go to tcode AOLK and assign tab layout YSUB for asset class 1000.
Save and come out.
Test the Exit
Everything is over. Now, go to transaction code AS01/02/03 or AS91 to deal with an asset of asset class 1000. You will see your new fields added to the screen. Add values to them
save. Then, enter into the tcodes again to see whether the values entered by you are being displayed or not.
Original Source: ittoolbox.com
User Exits:
User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a function module. The code for the function module is written by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module.
The naming standard of function modules for functionmodule exits is:
EXIT_<program name><3 digit suffix>
The call to a functionmodule exit is implemented as:
CALL CUSTOMER.-FUNCTION <3 digit suffix>
To find a Exit.
Goto Transaction -- Find The Package
SMOD >f4>Use the Package here to Find the Exits In the Package.
Else if you Want to search by Application Area wise ,
There is one more tab to find the Exits in the Respective Application Area.
Implementing the Exit-- CMOD Create ProjectsAssgn your Component .
Now Run ur Transaction to Check if it Triggers.
Thats it..
Suppose you need to find out all the user exits related to a tcode.
1. Execute the Tcode.
2. Open the SAP program.
3. Get the Development Class.
4. Execute Tcode SE84.
5. Open the Node 'Envir. -> Exit Techniques -> 'Customer Exits -> Enhancements'
6. Enter the Development class and execute.
Check out this thread..
The specified item was not found.
1. Type the transaction : system->status-> <PROG. NAME>
2 open SE37 , type EXIT<PROG NAME> and press F4 to get the list of function exits available.
3. Open CMOD utilities->SAP enhancements
EDIT->All selections
4.type the function module name obtained in step 2, in fields 'component name' in 'additional selections' block. and execute.
5. The displayed list contains the enhancements names for the transaction You were looking for.
6. Create a project in CMOD and the code in default include->activate.
http://www.erpgenie.com/sap/abap/code/abap26.htm
which gives the list of exits for a tcode
http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec079f5db911d295ae0000e82de14a/frameset.htm
For information on Exits, check these links
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sapgenie.com/abap/code/abap26.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
http://www.easymarketplace.de/userexit.php
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
http://www.planetsap.com/userexit_main_page.htm
User-Exits
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sap-img.com/ab038.htm
http://www.planetsap.com/userexit_main_page.htm
http://www.sap-basis-abap.com/sapab013.htm
http://sap.ittoolbox.com/documents/popular-q-and-a/user-exits-for-the-transaction-code-migo-3283
These links will help you to learn more on user exits.
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm
http://www.planetsap.com/userexit_main_page.htm
http://www.allsaplinks.com/user_exit.html
www.sap-img.com/abap/what-is-user-exits.htm
Also please check these threads for more details about user exits.
Re: Screen exit
user exit and customer exit
user exit
1. Document on UserExits in FI/CO
http://www.ficoexpertonline.com/downloads/User%20ExitsWPedit.doc
2. Finding User Exits...
http://sap.ionelburlacu.ro/abap/sap2/Other_Useful_Tips.html#Finding_User_Exits
3. List of all User Exits...
http://www.planetsap.com/userexit_main_page.htm
Reward if found helpfull,
Cheers,
Chaitanya.
Similar Messages
-
ALV for one header and multiple item table
Hello All,
I have a requirement to display records from one header and three item table using ALV.
The output should be such that
1-line - record from header table
followed by - records from the 1st item table(can have multiple entries corresponding to a header record and each should be displayed on separate line)
followed by - records from 2nd item table(can have multiple entries corresponding to a header record and each should be displayed on separate line)
followed by - record from 3rd item table(can have multiple entries corresponding to a header record and each should be displayed on separate line)
Can you help me out.
Thanks and regards,
Subramanian.hi
data population is same for alv or normal reporting.
First you select the data from header
select from item data using for all entries in it_header where....
select item 2
selct item 3
loop a it_header
read item1
read item2
read item3
check sy-subrc
move to i_final
then build fieldcatalog and display..
look the example
SELECT PERNR
STELL
WERKS
ABKRS
ENAME
ENDDA
BEGDA
ORGEH
PERSG
PERSK
KOSTL
FROM PA0001
INTO TABLE I_PA0001
WHERE PERNR IN S_PERNR
AND ABKRS IN S_ABKRS
AND PERSG IN S_PERSG.
SELECT SPRSL
STELL
ENDDA
STLTX
FROM T513S
INTO TABLE I_T513S
FOR ALL ENTRIES IN I_PA0001
WHERE STELL = I_PA0001-STELL AND SPRSL = 'EN'.
SELECT PERSA
NAME1
FROM T500P
INTO TABLE I_T500P
FOR ALL ENTRIES IN I_PA0001
WHERE PERSA EQ I_PA0001-WERKS.
LOOP AT I_PA0001 .
READ TABLE I_T513S INTO WA_T513S WITH KEY STELL = WA_PA0001-STELL
SPRSL = 'EN'
ENDDA = WA_PA0001-ENDDA.
IF SY-SUBRC IS INITIAL.
MOVE WA_T513S-STLTX TO WA_FINAL-STLTX.
ENDIF.
V_SNO = V_SNO + 1.
Read Value For Personal area Text.
READ TABLE I_T500P INTO WA_T500P WITH KEY
PERSA = WA_PA0001-WERKS.
IF SY-SUBRC EQ 0.
MOVE WA_T500P-NAME1 TO WA_FINAL-NAME1.
ENDIF.
FORM DISPLAY_DATA .
--BUILDING FIELD CATALOG--
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = V_REPID
I_INTERNAL_TABNAME = 'I_FINAL'
I_STRUCTURE_NAME =
I_CLIENT_NEVER_DISPLAY = 'X'
I_INCLNAME = V_REPID
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = I_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.
*--Modifying titles of Field Catalog--
READ TABLE I_FCAT INTO WA_FCAT WITH KEY FIELDNAME = 'S_NO'.
IF SY-SUBRC EQ 0.
WA_FCAT-REPTEXT_DDIC = 'X'.
WA_FCAT-SELTEXT_S = TEXT-041.
WA_FCAT-SELTEXT_M = TEXT-041.
WA_FCAT-SELTEXT_L = TEXT-041.
WA_FCAT-OUTPUTLEN = 3.
WA_FCAT-JUST = 'L'.
MODIFY I_FCAT FROM WA_FCAT INDEX SY-TABIX.
CLEAR WA_FCAT.
ENDIF.
do for all the fields u want to display..
Award points if useful. -
What are the advantages and disadvantages for the larger blocksize and for
What are the advantages and disadvantages for the larger blocksize and for the smaller blocksize?
Smaller blocksize
Advantages
GoodHas relatively large space overhead due to metadata
(that is, block header).
Not recommended for large rows. There might only
be a few rows stored for each block, or worse, row
chaining if a single row does not fit into a block, for small rows with lots of random
access.
Reduces block contention.
Disadvantages
Has relatively large space overhead due to metadata
(that is, block header).
Not recommended for large rows. There might only
be a few rows stored for each block, or worse, row
chaining if a single row does not fit into a block.
Larger blocksize
Advantages
Has lower overhead, so there is more
room to store data.
Permits reading a number of rows into
the buffer cache with a single I/O
(depending on row size and block size).
Good for sequential access or very large
rows (such as LOB data).
Disadvantages
Wastes space in the buffer cache, if you are doing
random access to small rows and have a large block
size. For example, with an 8 KB block size and 50
byte row size, you waste 7,950 bytes in the buffer
cache when doing random access.
Not good for index blocks used in an OLTP
environment, because they increase block contention
on the index leaf blocks. -
How I can get the Billing Type for the sales order and its items
How I can get the Billing Type for the sales order and its items. I mean from which SAP tables and how?
Hi,
You need to use two tables.
First use VBFA. Enter the sales order number in the field Predecessar and the value M in SubCt field. This will give all the billing document number for the sales order items.
Then use the billing document numbers in table VBRK, where in you can get the billing document type.
Regards, -
ok i have been trying to download albums, songs, apps, etc. and my itunes keeps asking me for the security question and for the life of me i cant remember the answers. I dont know what the email is that receives the question reset. is there anything i can do to fix this or am i screwed?
If you have music that was purchased on different iTunes accounts than the one you use, then you must provide the password, otherwise the tunes are not considered yours. You can turn off iCloud and just use the usual USB sync method. But I wonder whether you'll have the same problem?
-
What do I do to upload latest version for Elements 12 version 12.0 when getting an error for 12.1-U43M1D207 and for raw-U44M1120?
Update 12.1 installation errors | Photoshop Elements, Premiere Elements
-
Displaying header and line items
Hi,
i) i have a fieldname i.e text and its value to display in the bodypage (body)..
i want to display the text and its value only if the value is there.. otherwise it should not be displayed and a blank line also should not appear
in smartforms we can handle that in conditions in the corresponding node, how we do the same in adobe forms?
ii) suppose i have header and line items and for each header item i want to display the line items, both r in 2 tables how can we handle this
ThanksHi Shekar,
The following solutions useful if you are using printbased forms.
1. To display the field if the value is there.
->In the Context you can define the condtion on the filed.
->You can write a script on the subform superior to the field
[code] if ( $.field.rawValue == <value> ) then
$.field.presence = hidden
endif [/code]
2. Header and item table
In the SFP context drag the header table from interface.drag the item table from interface on the DATA in the header table. it will placed at the end of the header table. Now select the item table select where clause in the properties ( at the bottom of the screen ).there you create a line for condition using create button. drag the field from header table field ( say header-matnr ) on the right side and then drag the same field from the item table ( say item-matnr) in the left side.This will filter the item records relevent for header record.
refer the message
Re: Adobe IF Attachments -
Header and Line Item reporting (MultiProvider)
Hello All,
We have data coming in from a LO Extractor. There are 2 extractors. 1 for line item the other for Header. The line item extractor has all the fields for both so we decided to use this extractor (the line item).
Question is, when extracting this data multiple records come over. Let's say the order has 2 line items. It brings over a header record and then 2 line item records. We have it going to an ODS and then Cube. The ODS key is order number and item. Well the header record comes over with item number #, so 3 records hit the ODS.
How do you handle this? We saw something about denormalization and make this header record item number a 0.
Can someone explain to us how to handle this? We also read about a Constant selection and loading the header record and line item as we are to both the InfoCube, but we just don't understand this solution.
Please help, Thank youItem level will have all fields those are in Header level.Header level data will be a subset of Item level data.Load only Item level and when you require header data remove Item number in that relevant DSO and you can see all the data summarized to header level in overwrite mode.
This will not be good option if you require some fields that may have different records in the header and the item.
One better option is create a secondary staging DSO that updated by header, item and schedule line level and you can choose your own data fields and key fields. You can update them in overwrite mode to have summarized records that avoids duplication of records from header and item for same document.
Constant selection wil be helpful in the report level not during load process.
http://help.sap.com/saphelp_nw70ehp1/helpdata/en/e7/5f983c1a356858e10000000a114084/frameset.htm
This will ensure total displayed is constant even after navigation. So it hides repetitive records displaying after drilldown. -
Need information about FI document with header and no items
Hello Experts!
I need your help for understanding the following subject :
How is it possible when using F.13 to obtain a fi document with header without items sometimes,
and fi document with header and items anothers times?
We didn't saw/found customizing topics about that ( to enable or not header without items) Some exists?
The only difference in the two cases are the document's type involded which are not the same.
Regards,
JosianeHi,
We verify and compare everything. it's the same everywhere except the document type of the invoice
first case, F.13 create conciliation fi document with header and no items
invoice ( doc. type YB )
payment ( doc type ZT)
conciliation ( doc type XZ )
2th case, F.13 create conciliation fi document with header and none items
invoice ( doc. type YT )
payment ( doc type ZT )
conciliation ( doc type XZ )
We match / compare every fields and value between invoice of 1st and 2tch case, every fields and value between payment of 1st and 2th case.
( we create tests case in own integration system for reproduce )
We alse match / compare customizing of invoice type document YB and YT and they seems identical...
The procedure is the same with F.13 to do conciliation in both cases.
we got same amount, same currency etc etc.
We still didn't understand why with invoice type YT the conciliation document created is not the same as invoice type YB ...
Nobody have idea ? -
How to upload header and corresponding item details to application server?
Hi all,
How to upload control data , header data and the corresponding data in the application server based on the company code.
If the user selects multiple company codes like US, GE,IN....3 files need to placed in the application server with the corresponding header and item details. The control data is unique per file.
Thanks,
CharanFor Header and Item data you create separate structure as below...
Header
|----Link
|----
|----
!-----Item
|-----link
|-------
(Note the hierarchy- Header str>LINK--> Its fields->ITEM str > LINK under ITEM str->ITEM's fields under ITEM's fields.)
Header part will have all header fields. Item will come under Header and all ITEM's fields will come under Item.
Both HEADER and ITEM will have field LINK -- Char 003 which will allow all ITEMs for a HEADER to fall under proper Header data..
Header and Item Structure will have different files as per the sequence of the fileds..
Map the fields properly..
It will work...
If its helpful to you don't forget to reward the pts..
Edited by: sumesh on May 19, 2008 4:28 PM -
Dear all,
I have a input that looks like this:
HeaderKeySomeHeaderInformationItemKeySomeItemInformationItemKeySomeItemInformation...
Here's the actual input
TEHGMESS0026000000288S0001TEI2____026200006112410400000000 18010000000000 00126000000000126000120600000000002000000000 000WESTMONOBERTBE2014052309422408120003 000000000000000000000000000000JTEI2____026200006112410400000000 19010000000000 00126000000000126000120600000000002000000000 000WESTMONOBERTBE2014052309422408120003 000000000000000000000000000000J
HeaderKey = TEHGMESS
ItemKey = TEI2____
Is it possible to process this via MessageTransformBean (my actual scenario is JMS to IDoc)? I already tried but I only succeeded when having new lines in my input to separate between Header and (multiple) Items.
So when the input and my configuration looks like below it works, but when I only have a single row input it doesn't work, even when specifying xml.recordHeader.endSeparator = '0' / xml.recordItem.endSeparator = '0'. I even tried xml.endSeparator = '0' but no luck.
Input that works
TEHGMESS0026000000288S0001
TEI2____026200006112410400000000 18010000000000 00126000000000126000120600000000002000000000 000WESTMONOBERTBE2014052309422408120003 000000000000000000000000000000J
TEI2____026200006112410400000000 19010000000000 00126000000000126000120600000000002000000000 000WESTMONOBERTBE2014052309422408120003 000000000000000000000000000000J
Matching configuration that works for input which structures are delimited by new line.
Paramentername
Parametervalue
Transform.Class
com.sap.aii.messaging.adapter.Conversion
Transform.ContentType
text/xml;charset=utf-8
xml.conversionType
StructPlain2XML
xml.documentName
MT_TEI2Split
xml.documentNamespace
http://hansgrohe.com/pi/MQ/TEI2/10
xml.keyFieldName
SATZARTKey
xml.keyFieldType
CaseSensitiveString
xml.processFieldNames
fromConfiguration
xml.recordHeader.fieldFixedLengths
8,4,9,1,4
xml.recordHeader.fieldNames
SATZARTKey,SATZLENHG,NUTZLEN,MESSAE,MESSNR
xml.recordHeader.keyFieldValue
TEHGMESS
xml.recordItem.fieldFixedLengths
8,4,2,10,8,19,3,3,2,10,6,2,10,6,2,10,6,6,6,6,6,11,9,2,10,6,2,10,6,3,4,3,7,14,8,1,31
xml.recordItem.fieldNames
SATZARTKey,SATZLEN,BUCHART,TRNR,ANDGNR,MITEM,TEIVARI,BSTSTATU,REFTYP,ORNO,POS,REFTYP1,ORNO1,POS1,CHATYP,CHARGE,CHAPOS,ABBVONL,ABBNACH,ZUBVONL,ZUBNACH,I2MENG,I2BUNR,REFTYPN,ORNON,POSN,REFTYP1N,ORNO1N,POS1N,BSTSTATN,ABUSERAB,ABUSERFN,ABUSERNA,I2TIME,I2LIDNR,I2FMCODE,FILLER
xml.recordItem.keyFieldValue
TEI2____
xml.recordsetName
records
xml.recordsetStructure
recordHeader,1,recordItem,*
Any clues on this? Is it even possible to have multiple structures in one row? Many thanks in advance
JensSAP came back to me with this answer:
First, I would like to point the documentation for Message Transform
Bean (MTB) in 7.4:
http://help.sap.com/saphelp_nw74/helpdata/en/57/0b2c4142aef623e10000000a155106/content.htm?frameset=/en/57/0b2c4142aef623e10000000a155106/frameset.htm¤t_toc=/en/45/0ea2de423c2d6be10000000a11466f/plain.htm&node_id=18
As it is written at the beginning of this document, MTB is used to
call classes written for the Plain Adapter Engine. So you may find
additional documentation about the parameters for convertion in the
documentation of the Plain Adapter Engine
(http://help.sap.com/saphelp_nw74/helpdata/en/0d/00453c91f37151e10000000a11402f/content.htm?frameset=/en/1b/d5ef3b1ad56d4fe10000000a114084/frameset.htm¤t_toc=/en/75/246b3de666930fe10000000a114084/plain.htm&node_id=11).There it is written that the structures by default are
arranged line-by-line. The endSeparator just adds additional character
string as a separator after the last column in a row.
I hope that this answers your question. MTB expects the data to be
structured line by line.
You may add a custom module, which transforms the message in the
expected format.
If you have a look at the second link there's even a more precise wording that multiple structures within one line are not supported:
xml.NameA.endSeparator
Even if no specification is made here, a line break must follow since substructures are always expected as a line of the document.
Bottom line is that it's not supported by now and verfied by me with PI 7.4 SP5
Many thanks to Ambrish, Amit and Hareesh for the valuable input. Will probably try to work things out for now following Ambrish's / Hareesh's suggestion as this seems easier to implement. Amit's proposal with a dedicated module however would probably be the more polished solution.
Cheers
Jens -
What's the difference of Item Class value:Header and Line Item in AME Rule
Hi All,
when creating a Rule or Attribute,there is a Item Class property,which contains Header and Line Item two values.
Can anybody pls help me clarify the difference?
thx,
edmund.This information can be found in the Approvals Management implementation guide in metalink. The part number for this document is B31622-02
Regards -
Custom fields added on PO header and PO item in ME21n
hi everybody
I have added 2 fields on PO header and PO item level in ME21N screen, everything is working fine
but the issue is that if the Customer Data tab page is not opened at the Header Level, the additional fields in Customer Data tab page at Item Level are not displayed as well
Does anybody knws why this happens?May be i wrongly explained, all the data are getting populated on the screen and in the database tables.
Its just that if the Customer tab on PO header is not opened, the fields in the Customer tab in PO item level are not getting displayed
As such, the data are being saved in the tables.
Its only if the customer tab on header is not opened, the fields in Customer tab in PO item are not displayed.
Otherwise if PO header customer tab is opened, everything is ok -
Header and Footer Items in Adobe Muse? Also Menu text being cut off half way.
How can I make the header and footer items load faster in Adobe Muse? I am hosting with Business Catalyst. Everything else loads almost immediatly on my web page, but my Header and Footer graphic- wood grain picture- take almost 10 seconds to load, and almost a minute to load on mobile devices.
As well, my menu's are not loading correctly on other peoples devices. On my lap top everything looks fine, but on other peoples devices the text in my menus is only loading half way? -only shows half the text.
Still working on my site, but to see what I am talking about you can visit the web page I am in the middle of building at www.bkskin.com
Please give me some advice if any of you have some, thank you.
Megan BurnettHello,
It seems to be an issue with the Font that you have used.
You have used Bubble-one font and if you check this font in Google Chrome it is cut off and if you check in Firefox, it comes up fine.
Please have a look at this link in Google Chrome and Firefox and you will see the difference : http://www.google.com/fonts/specimen/Bubbler+One
I would suggest you to use some other font in order to fix it.
Regards,
Sachin -
How to add new fields for FB01 transaction both at Header and Line item
Hi Guys,
I would like to add the new fields at header and item level in FB01 transaction. Can I acheive this by using transaction EEWB....please help me on this.
Thanking youHi,
We are trying to copy a work flow objects from ECC6.0 to 4.6C...where we found the following Select statement.
*Determine Top WorkItem Instance
if im_top_wi_id is initial.
select wi_id top_wi_id wi_rh_task into lw_top_id from sww_wi2obj
up to 1 rows
where wi_rh_task = im_wftask and
catid = 'BO' and
instid = l_instid and
typeid = 'FIPP'.
endselect.
endif
As table sww_wi2obj can't be found in 4.6C, can any one help how to replace or implement the same logic as above statements.
Thank you....
Maybe you are looking for
-
ITunes Match doesn't accept editing of matched music anymore
I am using iTunes Match since one month and everything worked quite well so far. However, since yesterday I am unable to edit or delete music or playlists that have been matched or uploaded to the cloud by iTunes Match. Every time I try to make chang
-
In need of a pattern for a common problem - what to instantiate?
I'm sure this is a common problem with a standard solution (in a form of well known pattern), but I am not aware of one nor do I have any idea how would I Google for it... So, here it goes (exemplified): a user is presented with a combo box that enab
-
Can't edit/change the information on some of my songs
Hi everyone The information on some of the songs in my library can't be edited. I thought it might be a tagging type problem so I went to Advanced menu and the 'Convert ID3 Tags' menu item is greyed out. These aren't purchaced songs. I've looked at t
-
How to add entry in OMT3R and transport it to other clients
Hello Experts, I am adding MRP4 view to tow Z transactions. I added entry in the screen ref. key which is associated with this transaction using t.code OMT3B - Define Structure of Data screens for each sreen sequence in development configuration clie
-
We have an application that expects certain columns within our tables store a comma seperated list of numeric values. Our database however stores that information within lookup tables. To return that list I have opted for the below function within Or