Powered By Blogger

Friday, March 18, 2011

SAP R/3 ALE IDOC Technology

Introduction to Application Linking Enabling (ALE) and the Electronic Data Interchange (EDI) in the SAP R/3 package. By using SAP tools, ALE/EDI developers can query data, move it around within distributed systems, and even create reports with third-party tools. The powerful SAP R/3 package contains data fields that can automate virtually any manufacturing or business scenario. The author introduces Intermediate DOCuments (IDOCs), which provide message-based delivery of data.
Further sections investigate master data distribution (which involves requesting IDOC for particular fields). Throughout the book, the author enumerates the steps required within SAP R/3 to generate data (including screen shots of the R/3 tool at work). He also covers both outbound and inbound processing and how to customize IDOC messages. (This can be done to improve performance, for instance.)
Later the book turns to EDI and explains how to generate electronic reports (such as invoices), as well as how to submit data into R/3 via EDI. The book offers tips and techniques for optimizing data processing within distributed systems and features an appendix listing R/3 message codes and IDOC types (which all go by short mnemonic codes).
Written for the reader who already understands the basics of SAP R/3 but wants to learn more, this book can fill a useful niche for the enterprise developer who wants to see this powerful package at work. --Richard Dragan --This text refers to an out of print or unavailable edition of this title.

Product Description

SAP is the world's largest Enterprise Resource Planning (ERP) software provider with an installed base of more than 15,000 worldwide. ALE (Application Link Enabling) and EDI (Electronic Data Interchange) are two hot technologies that enable data communications between two or more SAP systems and/or SAP and legacy systems. --This text refers to an out of print or unavailable edition of this title.

From the Back Cover

The comprehensive users' guide to the powerful interfacing technology of ALE (Application Link Enabling) and EDI (Electronic Data Interchange) from SAP. With ALE and EDI, your company can build needed interfaces and begin squeezing every ounce of high-IT-value power from SAP R/3--all in a matter of days. Written by expert consultant Rajeev Kasturi, this book shows you how ALE and EDI can: maximize benefits with custom-tailored messaging between two R/3 systems and/or external systems; greatly improve business connectivity with trading partners such as customers, banks, and vendors; allow easy creation of new functionality; handle both inbound and outbound interfaces smoothly. Featuring tip- and shortcut-filled Highlighted Notes, and loaded with fully tested source code for a multitude of frequently used transactions, this leading-edge ALE and EDI guide is all you need to propel your enterprise to the front of the pack. The book's chapters progress from fundamental concepts to building ALE interfaces from scratch, and also discuss advanced topics such as workflow, IDOC archiving and ALE optimization. --This text refers to an out of print or unavailable edition of this title.

About the Author

Rajeev Kasturi is a leading SAP consultant who implements and teaches ALE/EDI/IDOC technologies at client sites. A professional in information technology for more than eight years, he was previously a part-time writer/journalist in India. Rajeev has successfully spearheaded multiple ALE/EDI implementations at Fortune 500 companies. --This text refers to an out of print or unavailable edition of this title.

Difference between Select-Options and Parameters

The main difference between select-options and parameters is that the select-option creates a selection table consisting of 4 fields.
Please go thru the following details to learn more bout it...
Description of the individual components:
SIGN
The data type of SIGN is C with length 1. The contents of SIGN determine for each row whether the result of the row condition is to be included in or excluded from the resulting set of all rows.
Possible values are I and E.
– I stands for "inclusive" (inclusion criterion - operators are not inverted)
– E stands for "exclusive" (exclusion criterion - operators are inverted)
OPTION
The data type of OPTION is C with length 2. OPTION contains the selection operator. The following operators are available:
– If HIGH is empty, you can use EQ, NE, GT, LE, LT,CP, and NP. These operators are the same as those that are used for logical expressions. Yet operators CP and NP do not have the full functional scope they have in normal logical expressions. They are only allowed if wildcards ( '*' or '+' ) are used in the input fields.
If wildcards are entered on the selection screen, the system automatically uses the operator CP. The escape character is defined as #.
– If HIGH is filled, you can use BT (BeTween) and NB (Not Between). These operators correspond to BETWEEN
and NOT BETWEEN that you use when you check if a field belongs to a range. You cannot use wildcard characters.
- LOW
The data type of LOW is the same as the column type of the database table, to which the selection criterion is linked.
– If HIGH is empty, the contents of LOW define a single field comparison. In combination with the operator in OPTION, it specifies a condition for the database selection.
– If HIGH is filled, the contents of LOW and HIGH specify the upper and lower limits for a range. In combination with the operator in OPTION, the range specifies a condition for the database selection.
- HIGH
The data type of HIGH is the same as the column type of the database table, to which the selection criterion is linked. The contents of HIGH specify the upper limit for a range selection.
The parameter statement does not create a selection table .
The second thing is select-option gives us a range for selection, whereas parameter doesn't .
Using the parameter you can define radio buttons and checkboxes where as select-options can't .

SAP ABAP dynpro programs, dialog screen programs with input fields, buttons, OO ALV grids etc..



An SAP dialog program is an ABAP development which consists of many screens which when linked together make up an application which allows the user to perform a specific piece of functionality such as creating a purchase order (ME21). These screens are referred too as dynpros (DYnamic PROgrams) and are made up of the actual user screen and its associated flow logic which are all stored within an SAP module pool. It is the flow logic via the use of the PBO and PAI that controls the process and functionality of the screen and depending on the user actions the appropriate event or relevant next dynpro is called.

The PBO module controls all events and functionality that needs to be performed before a screen is displayed to the user. i.e. populating default fields, hiding fields based on certain criteria.

The PAI module controls all the events and functionality which needs to be performed after the user performs an action. This includes things like field validation, checking the ok code to see what action the selected and performing the associated functionality etc etc...

Thursday, March 17, 2011

Dump SAPSQL_ARRAY_INSERT_DUPREC

Bit hard to read all the output of your question as the line breaks have been lost.

However Duprec is exactly what it says it is, attempt to save duplicate record to the database. You cannot create a duplicate record in a relation database when that record has a the same key as a primary key or unique key index. ie It is breaking the relational database model.

Now since I see that the error is on a "Z" program Z_LE1_SAVE_ALGORITHM_PICKS....my basis brain says first " Who wrote this s..t?", to be honest I would walk/phone a good ABAP developer and ask them if they could debug the program for this issue. Now there can be much rarer reasons for duprec (classic is with multibyte, codepage issues) but go with the most likely someone or something is trying to save the same bit of data twice.

ABAP-DUMP


1…How to query which Tcodes specified user used with one day? 
You can use transaction code ST03N.

1. Go to tx code - ST03N
2. Under "Workload" you can select your "Instance or Total" so that it expands and shows you Days, Week, Month.
3. If you want to look at the transactions executed for a particular day, lets say, then double click on any day.
4. At the bottom left you get "Analysis Views"
5. Select & expand "User and Settlement Statistics"
6. Double click on "User Profile"
7. On the right side of the window you get a list of all the users
8. Double click on a particular user you want to view the details of.
9. The new screen will display the "Transactions/Reports Utilized by User XXX"

If you wanna track which users executed a particular transacation then follow this:

10. In "Analysis Views" expand "Transaction Profile"
11. Double click on "Standard"
You can view the list of Transactions and Reports.
12. Double click on the Tx Code or Report you wanna check and it will show the Use of it.

Use TCodes STAT or   STATTRACE.