Automatic BD20 execution after creating IDoc
Hi,
I am working on an inbound IDoc.When I execute my report if the data that I pass for IDoc creation is valid IDOc will be generated .
There is an additional requirement after the creation of IDoc ,the user should be taken to a screen like BD20 output screen which gives details like
IDOC number | Message Type | Serial Info | St | Description
For this to work the the new IDoc's IDoc number should be given as input to the BD20 transaction.
If you double click on this it should take you to the WE02 screen.
Can you please help me out with this.
Thanks in advance.Points will be rewarded.
Regards,
Reni
Hi Reni,
You can build simple report like BD20 to collect all inbound IDocs based on selection screen for monitoring purposes. Then use FM EDI_DOCUMENT_TREE_DISPLAY to display the IDoc like WE02 from report list (using hotspot).
You can do something like this ...
FORM WRITE_AUDIT_REPORT .
SKIP 1.
WRITE:/35 'IDOC AUDIT REPORT'(749) COLOR COL_NORMAL.
WRITE:/ SY-ULINE AS LINE.
FORMAT COLOR OFF.
FORMAT COLOR OFF.
SKIP 3.
LOOP AT IT_IDOC.
PERFORM ALTERNATE_COLOR.
WRITE:/10 'IDOC NUMBER :'(737) COLOR COL_KEY.
FORMAT COLOR OFF.
WRITE:28 IT_IDOC-DOCNUM HOTSPOT.
ENDLOOP.
FORMAT COLOR OFF.
PERFORM WRITE_DATES_TIMES.
ENDFORM. " write_audit_report
AT LINE SELECTION.
IF IT_IDOC-DOCNUM IS NOT INITIAL.
CALL FUNCTION 'EDI_DOCUMENT_TREE_DISPLAY'
EXPORTING
DOCNUM = IT_IDOC-DOCNUM
EXCEPTIONS
NO_IDOC_FOUND = 1
OTHERS = 2.
ENDIF.
Hope this will give you an idea.
Regards,
Ferry Lianto
Similar Messages
-
Unable to create IDOCs after client copy
I'm unable to create IDOCs after a client copy. I receive a SAPSQL_ARRAY_INSERT_DUPREC or insert of duplicate rows ABAP dump.
Does anyone know what how to fix this. Thank you in advance.
Runtime Error SAPSQL_ARRAY_INSERT_DUPREC
Except. CX_SY_OPEN_SQL_DB
Date and Time 22.10.2007 16:50:51
ShrtText
The ABAP/4 Open SQL array insert results in duplicate database records.
What happened?
Error in ABAP application program.
The current ABAP program "SAPLEDI1" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
What can you do?
Print out the error message (using the "Print" function)
and make a note of the actions and input that caused the
error.
To resolve the problem, contact your SAP system administrator.
You can use transaction ST22 (ABAP Dump Analysis) to view and administer
termination messages, especially those beyond their normal deletion
date.
is especially useful if you want to keep a particular message.
Error analysis
An exception occurred. This exception is dealt with in more detail below
. The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was
neither
caught nor passed along using a RAISING clause, in the procedure
"F09_IDOC_INSERT_WITH_NUMBER" "(FORM)"
Since the caller of the procedure could not have expected this exception
to occur, the running program was terminated.
The reason for the exception is:
If you use an ABAP/4 Open SQL array insert to insert a record in
the database and that record already exists with the same key,
this results in a termination.
(With an ABAP/4 Open SQL single record insert in the same error
situation, processing does not terminate, but SY-SUBRC is set to 4.)
How to correct the error
Use an ABAP/4 Open SQL array insert only if you are sure that none of
the records passed already exists in the database.
You may able to find an interim solution to the problem
in the SAP note system. If you have access to the note system yourself,
use the following search criteria:
"SAPSQL_ARRAY_INSERT_DUPREC" CX_SY_OPEN_SQL_DBC
"SAPLEDI1" or "LEDI1F09"
"F09_IDOC_INSERT_WITH_NUMBER"
If you cannot solve the problem yourself and you wish to send
an error message to SAP, include the following documents:
1. A printout of the problem description (short dump)
To obtain this, select in the current display "System->List->
Save->Local File (unconverted)".
2. A suitable printout of the system log
To obtain this, call the system log through transaction SM21.
Limit the time interval to 10 minutes before and 5 minutes
after the short dump. In the display, then select the function
"System->List->Save->Local File (unconverted)".
3. If the programs are your own programs or modified SAP programs,
supply the source code.
To do this, select the Editor function "Further Utilities->
Upload/Download->Download".
4. Details regarding the conditions under which the error occurred
or which actions and input led to the error.
The exception must either be prevented, caught within the procedure
"F09_IDOC_INSERT_WITH_NUMBER"
"(FORM)", or declared in the procedure's RAISING clause.
To prevent the exception, note the following:
System environment
SAP Release.............. "640"
Application server....... "auaplxr3q"
Network address.......... "128.197.135.5"
Operating system......... "AIX"
Release.................. "5.3"
Hardware type............ "000B439ED600"
Character length......... 8 Bits
Pointer length........... 64 Bits
Work process number...... 1
Short dump setting....... "full"
Database server.......... "auaplxr3q"
Database type............ "ORACLE"
Database name............ "Q63"
Database owner........... "SAPR3"
Character set............ "en_US.ISO8859-1"
SAP kernel............... "640"
Created on............... "Mar 22 2007 20:48:46"
Created in............... "AIX 1 5 00538A4A4C00"
Database version......... "OCI_920 "
Patch level.............. "175"
Patch text............... " "
Supported environment....
Database................. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE
10.2.0.."
SAP database version..... "640"
Operating system......... "AIX 1 5, AIX 2 5, AIX 3 5"
Memory usage.............
Roll..................... 16128
EM....................... 4189928
Heap..................... 0
Page..................... 0
MM Used.................. 1469352
MM Free.................. 2718056
SAP Release.............. "640"
User and Transaction
Information on where terminated
The termination occurred in the ABAP program "SAPLEDI1" in
"F09_IDOC_INSERT_WITH_NUMBER".
The main program was "SAPMSSY1 ".
The termination occurred in line 108 of the source code of the (Include)
program "LEDI1F09"
of the source code of program "LEDI1F09" (when calling the editor 1080).
Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in
the
procedure "F09_IDOC_INSERT_WITH_NUMBER" "(FORM)" but was not handled locally,
not declared in the
RAISING clause of the procedure.
The procedure is in the program "SAPLEDI1 ". Its source code starts in line 5
of the (Include) program "LEDI1F09 ".
Source Code Extract
Line
SourceCde
78
perform call_badi tables list_container_insert
79
using control
80
ident.
81
Aufruf des Badi's für das einstreuen neuer Segmente
82
perform call_insert_badi tables list_container_insert
83
using control
84
ident
85
changing maxsegnum.
86
87
free list_container_insert
88
FREE_RETURN = 1.
89
ELSE. " no other IDoc is open in create-mode
90
LOOP AT LIST_CONTAINER_CREATE WHERE MANDT EQ SY-MANDT
91
AND DOCNUM EQ IDENT.
92
LIST_CONTAINER_CREATE-DOCNUM = DOCNUM.
93
MODIFY LIST_CONTAINER_CREATE.
94
ADD 1 TO MAXSEGNUM.
95
ENDLOOP.
96
if control-mestyp eq c_mestyp.
97
CALL FUNCTION 'FUNCTION_EXISTS'
98
EXPORTING
99
funcname = c_func
100
EXCEPTIONS
101
FUNCTION_NOT_EXIST = 1.
102
IF syst-subrc IS INITIAL. "Anwendungssystem
103
perform call_transform
104
tables list_container_create
105
using control.
106
ENDIF.
107
endif.
>>>>>
INSERT EDID4 FROM TABLE LIST_CONTAINER_CREATE.
109
Aufruf des Badi's für das Anwendungsmapping einzelner Felder
110
perform call_badi tables list_container_create
111
using control
112
ident.
113
perform call_insert_badi tables list_container_create
114
using control
115
ident
116
changing maxsegnum.
117
118
free list_container_create
119
FREE_RETURN = 0.
120
ENDIF.
121
122
insert status records
123
124
SYN_ERROR_IN = ' '.
125
CNTR_STATUS = 0.
126
REFRESH LIST_STATUS.
127
CLEAR LIST_STATUS.
Contents of system fields
Name
Val.
SY-SUBRC
0
SY-INDEX
2
SY-TABIX
1
SY-DBCNT
1
SY-FDPOS
0
SY-LSIND
0
SY-PAGNO
0
SY-LINNO
1
SY-COLNO
1
SY-PFKEY
SY-UCOMM
SY-TITLE
CPIC and RFC Control
SY-MSGTY
SY-MSGID
SY-MSGNO
000
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
Active Calls/Events
No. Ty. Program Include Line
Name
13 FORM SAPLEDI1 LEDI1F09 108
F09_IDOC_INSERT_WITH_NUMBER
12 FUNCTION SAPLEDI1 LEDI1U19 33
EDI_DOCUMENT_CLOSE_CREATE_TAB
11 FUNCTION SAPLEDIR LEDIRU01 273
IDOC_INBOUND_WRITE_TO_DB
10 FORM SAPLEDIN LEDINF01 457
ONE_IDOC_STORE
9 FUNCTION SAPLEDIN LEDINU05 234
IDOC_INBOUND_ASYNCHRONOUS
8 FORM SAPLEDIN LEDINV05 19
IDOC_INBOUND_ASYNCHRONOUS
7 FORM SAPMSSY1 SAPMSSY1 254
XAB_RUN_DRIVER
6 FUNCTION SAPLSXAB LSXABU01 9
RFC_RUN_XAB_DRIVER
5 FUNCTION SAPLERFC LERFCU01 59
ARFC_EXECUTE
4 FUNCTION SAPLERFC LERFCU02 229
ARFC_DEST_SHIP
3 FORM SAPLERFC LERFCV02 28
ARFC_DEST_SHIP
2 FORM SAPMSSY1 SAPMSSY1 69
REMOTE_FUNCTION_CALL
1 MODULE (PBO) SAPMSSY1 SAPMSSY1 30
%_RFC_START
Chosen variables
Name
Val.
No. 13 Ty. FORM
Name F09_IDOC_INSERT_WITH_NUMBER
CONTROL-MESTYP
USERCLONE
554544444222222222222222222222
53523CFE5000000000000000000000
C_MESTYP
FIDCCH
444444222222222222222222222222
694338000000000000000000000000
SY-XFORM
IDOC_INBOUND_ASYNCHRONOUS
444454444544545544454445522222
94F3F9E2F5E4F139E382FEF5300000
LIST_STATUS-STAPA2
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
C_FUNC
IDOC_TRANSFORM
444455544544542222222222222222
94F3F421E36F2D0000000000000000
SYST-REPID
SAPLEDI1
5454444322222222222222222222222222222222
310C549100000000000000000000000000000000
SY-UNAME
Q63CLNT140
533444533322
1633CE414000
%_DUMMY$$
2222
0000
SY-MSGV1
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SYST-SUBRC
0
0000
0000
ALE_IDOC_TO_APL_OK
62
33
62
LIST_CONTAINER_CREATE[]
Table IT_20[9x1068]
FUNCTION-POOL=EDI1DATA=LIST_CONTAINER_CREATE[]
Table reference: 14
TABH+ 0(20) = 070000008036F5B8000000000000000000000000
TABH+ 20(20) = 0000000E00000014000000090000042CFFFFFFFF
TABH+ 40(16) = 0400002300000CA0000824C401000000
store = 0x070000008036F5B8
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 14 (0x0000000E)
label = 20 (0x00000014)
fill = 9 (0x00000009)
leng = 1068 (0x0000042C)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000048
occu = 8 (0x00000008)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 8 (cmpManyEq)
occu0 = 1
collHash = 0
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x070000008036F610
pghook = 0x07000000802D86D0
idxPtr = 0x0000000000000000
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
store_id = 23 (0x00000017)
shmIsReadOnly = 0 (0x00000000)
>>>>> 1st level extension part <<<<<
regHook = Not allocated
hsdir = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
LIST_CONTAINER_CREATE
1400000000000511747000000009E1BPADRML 00000002#èXD63 070TST_QA140_1
3333333333333333333333333333434544544222222222222222222222333333330E54332222222233355555433353
14000000000005117470000000095120142DC0000000000000000000000000000238846300000000070434F11140F1
CONTROL
1400000000000511747640 64 2SAPQ63 LSQ63CLNT140
3333333333333333333333233222222223545533222245533444533322222222222222222222222222222222222222
14000000000005117476400640000000023101630000C31633CE414000000000000000000000000000000000000000
G_MAXSYNERR
1
0000
0001
<%_TABLE_EDID4>
ALE_DISPATCH_ERROR
27
33
27
ALE_IDOC_READY_FOR_APL
64
33
64
%_SPACE
2
0
IDENT
0000000000000001
3333333333333333
0000000000000001
ALE_IDOC_TO_APL_ERROR
63
33
63
No. 12 Ty. FUNCTION
Name EDI_DOCUMENT_CLOSE_CREATE_TAB
IDENTIFIER
0000000000000001
3333333333333333
0000000000000001
NO_DEQUEUE
X
5
8
SYN_ACTIVE
Y
5
9
IDOC_CONTROL
1400000000000511747640 64 2SAPQ63 LSQ63CLNT140
3333333333333333333333233222222223545533222245533444533322222222222222222222222222222222222222
14000000000005117476400640000000023101630000C31633CE414000000000000000000000000000000000000000
SYNTAX_RETURN
0
0000
0000
INT_EDIDD[]
Table IT_10[9x1062]
FUNCTION-POOL=EDINDATA=G_T_DATA_RECORDS[]
Table reference: 9
TABH+ 0(20) = 0700000080284B80070000008028530800000000
TABH+ 20(20) = 000000090000000A0000000900000426FFFFFFFF
TABH+ 40(16) = 0400000900000AA8000824C401000000
store = 0x0700000080284B80
ext1 = 0x0700000080285308
shmId = 0 (0x00000000)
id = 9 (0x00000009)
label = 10 (0x0000000A)
fill = 9 (0x00000009)
leng = 1062 (0x00000426)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000039
occu = 8 (0x00000008)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 8 (cmpManyEq)
occu0 = 1
collHash = 0
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x0700000080320D90
pghook = 0x07000000802E1508
idxPtr = 0x0000000000000000
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
store_id = 17 (0x00000011)
shmIsReadOnly = 0 (0x00000000)
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
hsdir = 0x0000000000000000
ext2 = 0x07000000802852A8
>>>>> 2nd level extension part <<<<<
tabhBack = 0x0700000080284B30
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
NO_IGNORE
2
0
EDI_IDOC_SYNTAX_ERROR_IN
60
33
60
DOCNUM
0000000000511747
3333333333333333
0000000000511747
EXCLUSIVE
E
4
5
SYNCHRONOUS
S
5
3
APL_TESTIDOC_CHECK_OK
55
33
55
FREE_RETURN
0
0000
0000
INT_EDIDD
1400000000000000001000009E1BPADRML 00000000##XD63 070TST_QA140_17 X00
3333333333333333333333333434544544222222222222222222333333330054332222222233355555433353322533
14000000000000000010000095120142DC0000000000000000000000000000846300000000070434F11140F1700800
SUB_INT_ACK_POSITIVE
14
33
14
G_INSERT_OK
2
0
LIST_CONTAINER_INSERT_TMP[]
Table[initial]
LIST_CONTAINER_INSERT_TMP
0000000000000000000000000 00000000##
2223333333333333333333333333222222222222222222222222222222333333330022222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
%_ARCHIVE
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
No. 11 Ty. FUNCTION
Name IDOC_INBOUND_WRITE_TO_DB
PI_DO_HANDLE_ERROR
X
5
8
PI_NO_DEQUEUE
X
5
8
PI_RETURN_DATA_FLAG
X
5
8
PI_RFC_MULTI_CP
0000
3333
0000
PI_STATUS_MESSAGE
000000000000000000000000000000000000000000000000000000000000
2223333333333333333333333333333333333333333333333333333333333332222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
PE_IDOC_NUMBER
0000000000000001
3333333333333333
0000000000000001
PE_INBOUND_PROCESS_DATA
140BAPI 6
3334454222222222222222222222222222222222222222222222222223222222222222222222222222222222222222
1402109000000000000000000000000000000000000000000000000006000000000000000000000000000000000000
PE_STATE_OF_PROCESSING
0
0000
0000
T_DATA_RECORDS[]
Table IT_10[9x1062]
T_LINKED_OBJECTS[]
Table IT_11[0x100]
FUNCTION-POOL=EDINFORM=ONE_IDOC_STOREDATA=LT_LINKED_OBJECTS[]
Table reference: 10
TABH+ 0(20) = 000000000000000007000000802853F000000000
TABH+ 20(20) = 0000000A0000000B0000000000000064FFFFFFFF
TABH+ 40(16) = 0400000900002BB00010249401000000
store = 0x0000000000000000
ext1 = 0x07000000802853F0
shmId = 0 (0x00000000)
id = 10 (0x0000000A)
label = 11 (0x0000000B)
fill = 0 (0x00000000)
leng = 100 (0x00000064)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000190
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
collHash = 0
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
store_id = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
hsdir = 0x0000000000000000
ext2 = 0x0700000080285390
>>>>> 2nd level extension part <<<<<
tabhBack = 0x0700000080285340
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
PC_CONTROL_RECORD
1400000000000000000 30 2 LSQ63CLNT140
3333333333333333333222233222222223222222222245533444533322222222222222222222222222222222222222
14000000000000000000000300000000020000000000C31633CE414000000000000000000000000000000000000000
%_VIASELSCR
0
4
%_SPACE
2
0
L_STATUS
64
33
64
L_ALE_SUCCESS_MESSAGE
B1 S005 No filters
4322222222222222222253332222222222222222222222222222222222222222222222222246266676772222222222
21000000000000000000300500000000000000000000000000000000000000000000000000EF069C45230000000000
ST_PREVIOUS_PARTNER_DATA-SYNCHK
X
5
8
C_TRUE
X
5
8
SYST-REPID
SAPLEDIR
5454444522222222222222222222222222222222
310C549200000000000000000000000000000000
C_ELEMENT_UNPROCESSED_IDOCS
Unprocessed_IDocs
56776667766544667222222222222222
5E02F353354F94F33000000000000000
ST_PREVIOUS_STATE_OF_PROCE
0
0000
0000
ST_INBOUND_PROCESS_DATA-EDIVR2
6
3
6
SY-MSGV4
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
L_SYN_ACTIVE
Y
5
9
SY-XFORM
IDOC_INBOUND_ASYNCHRONOUS
444454444544545544454445522222
94F3F9E2F5E4F139E382FEF5300000
L_SYNTAX_RETURN
0
0000
0000
%_DUMMY$$
2222
0000
SY-REPID
SAPLEDIR
5454444522222222222222222222222222222222
310C549200000000000000000000000000000000
No. 10 Ty. FORM
Name ONE_IDOC_STORE
IDOC_NUMBER_IN
0000000000000000
3333333333333333
0000000000000000
STATE_OF_PROCESSING_IN
0
0000
0000
INBOUND_PROCESS_DATA_IN
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
GT_NEW_IDOC_IDENTIFICATIONS[]
Table[initial]
G_LAST_IDOC_NUMBER
0000000000000000
3333333333333333
0000000000000000
SYST-REPID
SAPLEDIN
5454444422222222222222222222222222222222
310C549E00000000000000000000000000000000
CURRENT_CONTROL_RECORD_IN-DOCNUM
0000000000000000
3333333333333333
0000000000000000
CONV_ERROR
2
0
C_TRUE
X
5
8
SY
0000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000
0002000000010009000000000000000000000000000100000001000000010000000000000000004C00000000000000
STATUS_MESSAGE_IN
000000000000000000000000000000000000000000000000000000000000
2223333333333333333333333333333333333333333333333333333333333332222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
C_IDOC_SELECT_AND_WRITE_TO_DB
5
3
5
SY-REPID
SAPLEDIN
5454444422222222222222222222222222222222
310C549E00000000000000000000000000000000
STATUS_MESSAGE_IN-STAMID
22222222222222222222
00000000000000000000
GT_NEW_IDOC_IDENTIFICATIONS
0000000000000000
3333333333333333222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
SPACE
2
0
STATUS_MESSAGE_IN-STAMNO
000
333
000
RET_FLAG
X
5
8
G_RFC_CODEPAGE
0000
3333
0000
RSJOBINFO-JOBSUBRC
0
0000
0000
SY-XFORM
IDOC_INBOUND_ASYNCHRONOUS
444454444544545544454445522222
94F3F9E2F5E4F139E382FEF5300000
SY-LANGU
E
4
5
G_T_DATA_RECORDS[]
Table IT_10[9x1062]
LT_LINKED_OBJECTS[]
Table IT_11[0x100]
CURRENT_CONTROL_RECORD_IN
1400000000000000000 30 2 LSQ63CLNT140
3333333333333333333222233222222223222222222245533444533322222222222222222222222222222222222222
14000000000000000000000300000000020000000000C31633CE414000000000000000000000000000000000000000
%_DUMMY$$
2222
0000
SWO_%OBJID
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
No. 9 Ty. FUNCTION
Name IDOC_INBOUND_ASYNCHRONOUS
IDOC_CONTROL_REC_40[]
Table IT_3[1x524]
FUNCTION-POOL=EDINFORM=IDOC_INBOUND_ASYNCHRONOUSDATA=IDOC_CONTROL_REC_40[]
Table reference: 3
TABH+ 0(20) = 07000000802D876007000000802D449000000000
TABH+ 20(20) = 0000000300000003000000010000020C000000E0
TABH+ 40(16) = 0400000900001FE0000A249001000000
store = 0x07000000802D8760
ext1 = 0x07000000802D4490
shmId = 0 (0x00000000)
id = 3 (0x00000003)
label = 3 (0x00000003)
fill = 1 (0x00000001)
leng = 524 (0x0000020C)
loop = 224 (0x000000E0)
xtyp = TYPE#000136
occu = 10 (0x0000000A)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 0
collHash = 0
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x07000000802DB9D8
pghook = 0x0000000000000000
idxPtr = 0x0000000000000000
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 10 (0x0000000A)
lineAlloc = 10 (0x0000000A)
store_id = 9 (0x00000009)
shmIsReadOnly = 0 (0x00000000)
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
hsdir = 0x0000000000000000
ext2 = 0x07000000802D88A0
>>>>> 2nd level extension part <<<<<
tabhBack = 0x07000000802D8710
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
IDOC_DATA_REC_40[]
Table IT_4[9x1063]
FUNCTION-POOL=EDINFORM=IDOC_INBOUND_ASYNCHRONOUSDATA=IDOC_DATA_REC_40[]
Table reference: 4
TABH+ 0(20) = 07000000802D880807000000802D896000000000
TABH+ 20(20) = 00000004000000040000000900000427FFFFFFFF
TABH+ 40(16) = 04000009000020500008249001000000
store = 0x07000000802D8808
ext1 = 0x07000000802D8960
shmId = 0 (0x00000000)
id = 4 (0x00000004)
label = 4 (0x00000004)
fill = 9 (0x00000009)
leng = 1063 (0x00000427)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000138
occu = 8 (0x00000008)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 0
collHash = 0
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x07000000802E1550
pghook = 0x07000000802D8860
idxPtr = 0x0000000000000000
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
store_id = 12 (0x0000000C)
shmIsReadOnly = 0 (0xHi Rohan,
Welcome to SDN!
This error means that you're trying to duplicate a record on the DB... check the IDOC number ranges... it might help
Regards
Juan
Please reward with points if helpful -
From pages on a mbp running 10.9.1, pages 5.0.1 does not sync automatically to iCloud after a doc is created and saved. I have rebooted and reset all devices.
Welcome to the Apple Community.
What exactly do you mean by 'it doesn't save'.
Does this mean it doesn't save at all, doesn't save to the iCloud folder or doesn't sync with other the devices or iCloud.com. -
hai
i had to find out idoc number after creating a customer, for that particular customer, i know to find out bygoing to the transaction WE05, but it is very tedious to find the idoc num for that particular customer, is it possible to find from the application it self with out going to WE05
if so please help me,
reward guarenty
thanks in advance
sinduHi ,
In Customer Display Tcode -- XD03 ,
Extras ---> Customer Partner Function ---> ( Pls check Logical System LS )
Regards. -
How do I automatically delete a .ps file after creating a pdf?
Hi all! I vaguley remember in the past that there is a preference to automatically delete a .ps file after creating a pdf. Can someone remind me of how to do this? I'm using Distiller version 9.2.0. Thank you so much!
Julie
PS: I'm creating the .ps file from Quark 7, if that makes a difference.I am unaware of any feature allowing automatic delete of .PS files.
The adobePDF print driver which has been removed in OSX.6.x (Snow Leopard) That you choose when ina Document would go through the following steps in the background this made it slow.
create .ps File (hidden)
Checksum Verify the .ps File
Open Distiller in background (hidden)
Create Pdf
Checksum Verify the .pdf File
shut down Distiller in Backgroun (hidden)
Delete .ps File (hidden)
Pdf suddenly appears
If at any point in this chain something dies the pdf was not made.
Actually in prior OS to X.3.x the print driver provided for my Hp Inkjet, it was actually better to go to print menu, and choose save as postscript, then drop the postsript file on distiller and creat the PDF. or just open the ps in Acrobat.
with the PRint Drive provided for my HP Inkjet for X.3 it was changed to create Postcsript file from PDF. In the start having the PDF button on print menu. The pdf's were not as good as those created in the AdobePDF driver. But were aceptable for most purposes. -
Hi folks,
I've created a new Idoc segment for an existing idoc (The original idoc doesn't have the fields I need). I'm now trying to create a new Idoc type taking into consideration the new Idoc Extension I've created. When I type my new idoc type and select 'basic type', I believe I should get prompted (somewhere) to enter the Basic Idoc type and Extension type, but when I create a new basic type, I don't get the option to add my new extension. And If I copy the original basic type, I don't get my new segments.
Can someone please tell me what I'm missing in the create new Idoc Process?
Cheers,
SteveHi Stephen..
According to ur Scenario (Adding new Segments to a Basic type ) , you should not create a Basic idoc type . Rather you should create an Extended idoc type in WE30.
That will ask for the Basic type and the new segments can be added here.
This is the Complete info:
1.
IDOC Enhancement
This is the Complete Steps and Info on this...with an Example...
Enhancing ALE
For example, if in an outbound interface you find that the IDOC type does not contain all the data you need to pass to the other system, you can extend the IDOC to accommodate the additional fields and enhance the ALE function modules to populate the fields. Similarly, if in an inbound interface, there is additional data that needs to be posted to the R/3 application, you can extend the IDOC type to have additional fields populated by the external system or translator or the other R/3 system and then enhance the inbound ALE function modules to post the additional data to the R/3 application.
let us use the SAP Customer Master application as an example. Specifically, letâs focus on the IDOC extension and ALE function module enhancement of IDOC type DEBMAS02 and message type DEBMAS (Customer Master) and the IDOC reduction of message type MATMAS.
IDOC EXTENSIONS
Letâs first look at the concept of IDOC extension. SAP delivers Basic IDOC types such as DEBMAS02, MATMAS02, ORDERS02, and WMMBID01. By extending the Basic IDOC type, you are actually creating a new IDOC type. You create a new segment with the additional fields. This new segment has to be associated with one of the existing Basic IDOC segments. Then you create a new extension type, which is associated with the Basic IDOC type. This results in a new IDOC type. In order for ALE function modules to relate to this new IDOC type, the IDOC type is linked to the corresponding message type.
Note that you should not add fields to existing segments but should create a new segment and associate it with an existing segment. This, in a nutshell, is the process of creating IDOC extensions.
In our example, the Basic IDOC type DEBMAS02 is used to communicate Customer Master data to the SAP Customer Master application. Even though the application has a screen to enter and store a contact personâs business address (see Figure 1), DEBMAS02 does not have a segment or fields that communicate the contact personâs business address. If your business requires that this business address be communicated to the other system through the ALE interface for Customer Master, then you have to extend the DEBMAS02 IDOC type, and enhance the corresponding ALE function module.
In DEBMAS02 the contact person fields are present in segment E1KNVKM and the business address of the contact person is stored on the SADR SAP table. You need to create a new segment, Z1SADRX, that is associated with E1KNVKM. This will be done in the process of creating an extension type ZDEBMASX. This extension type will then be associated with a new IDOC type, ZDEBMASZ. IDOC type ZDEBMASZ will be linked to message type DEBMAS for Customer Master. The final step in the IDOC extension process is to check the new objects. This check also verifies the structural integrity of the IDOC type. Letâs look at each of these steps in more detail.
1. Create an Extension Type and a New Segment.
Determine the fields on table SADR that you are going to provide for in the new segment Z1SADRX. You need fields for name, street, city, region, and country to give the business address of the contact person. You also need fields for the address number. ADRNR is a field in SAP tables such as SADR that uniquely identifies the address of an entity. This field is cross-referenced from other tables to the SADR table to obtain the full description of the address. Because this is an IDOC type for master data, the first field of the new segment will be MSGFN. The message function field informs the receiving system of the action to be taken for that particular segment. In the code that you write for populating the new segment, the value of the message function is the same as that of the parent segment E1KNVKM. In all, you will have 12 fields in segment Z1SADRX (see Table 1).
To create an extension type and new segment:
Use transaction WE30 or from WEDI go to Development -> IDOC types.
Enter ZDEBMASX for Object Name.
Choose Extension Type.
Click on Create.
You will see a pop-up screen. Choose Create New, and enter a description. For version 4.x, enter DEBMAS02 in the Linked Basic Type field. Enter.
You will see a screen with ZDEBMASX and its description in the first line. Click on this line, and press Create. For version 4.x, expand the tree of segments, and place the cursor on E1KNVKM.
You will see a pop-up screen. Enter E1KNVKM as the reference segment. Enter.
For 4.x, press Create after placing the cursor on segment E1KNVKM.
You will see a line appear with E1KNVKM hierarchically below ZDEBMASX, with a description "Customer Master contact person (KNVK)."
Click on this line and press Create. You will receive a message indicating that the new segment being created will be a child segment of E1KNVKM. Enter. A pop-up box appears for the new segment.
Enter Z1SADRX as the segment type, 1 for Minimum, 1 for Maximum. Leave Mandatory segment unchecked. These entries imply that there is only one Z1SADRX segment for every occurrence of the E1KNVKM segment, and also that this segment is not mandatory. Note that if the parent segment is not mandatory, then the child segment should not be mandatory, because this could result in a syntax error during the creation or processing of the IDOC.
For 4.x, you must first create the IDOC segment Z1SADRX (Iâll explain why in a moment) from the menu path WEDI -> IDOC -> Development -> IDOC Segment.
Click on Segment Editor.
On the next screen, click on Create.
Enter a development class for the object. Enter.
This will take you to the screen for segment definition. Enter a description for the segment. Enter the field name, data element, and the data element documentation name. In most cases, all three fields may have the same values. If you are using a field in the segment that is not present in the ABAP/4 data dictionary, you must first create the domain, data element, field, and appropriate documentation before using it in the new segment.
Enter these three columns for all 12 fields. Save.
Click on Generate/Activate, F3 to step back.
From screen Maintain Segment, go to Segment Type -> Release. A checkbox now appears beside the segment definition Z1SADRX (see Figure 2). Check this box. Save.
Save again to store the descriptions of the segment, F3 to step back.
Save the extension type.
It is possible to have several new segments with relevant Basic IDOC type parent segments in a single extension type. However, you can form only one IDOC type based on a single extension type.
2. Create an IDOC Type.
The next step is to create an IDOC type by associating the extension type that you created with the Basic IDOC type. This is a simple process:
From transaction WE30 or WEDI go to Development -> IDOC Types.
Enter ZDEBMASZ for Object Name.
Click on IDOC Type.
Click on Create.
Enter DEBMAS02 for Basic IDOC type.
Enter ZDEBMASX for extension type.
Enter a description.
Enter.
You will see a display of the composite IDOC type with all segments, including Z1SADRX (see Figure 3).
It is possible to associate only one extension type with a Basic IDOC type for a given IDOC type. However, you can have multiple new segments in an extension type.
3. Link IDOC Type to Message Type.
The next step is to link the new IDOC type to its corresponding message type. This is important, because this relationship is referenced in the partner profile parameters where you specify the message type and IDOC type to be used for that particular representative system. To link the message type:
Use transaction WE82, or from WE30, go to Environment -> IDOC Type / Message Type, or from WEDI go to Development -> IDOC Type -> Environment Î IDOC Type / Message Type.
Click on Display <-> Change.
Click on New Entries.
Enter DEBMAS for message type.
Enter DEBMAS02 for Basic IDOC type.
Enter ZDEBMASX for extension type.
Enter your SAP R/3 release number for Release.
Save.
This data is stored on the EDIMSG table and is accessed by several ALE processes to relate the message type to the IDOC type.
4. Check the IDOC Type.
Before checking the IDOC type for consistency, it is important to perform another step that releases the extension type to the IDOC type:
From WEDI go to Development -> IDOC Types -> Extras -> Release Type, or from transaction WE30 go to Extras -> Release Type.
For the Object Name ZDEBMASX and radio button Extension Type, click Yes.
The extension type has now been "released."
You canât edit the extension type once itâs released. To cancel the release for further editing or deactivation, go to WE30 Î Extras Î Cancel release. The final step in the IDOC extension process is checking the validity of the IDOC type:
From transaction WE30 or WEDI go to Development -> IDOC types.
Enter ZDEBMASX for Object name.
Click on Extension Type.
From the Development Object menu select Check.
Repeat the operation for IDOC type ZDEBMASZ.
A check log will be generated for each run with details of correctness or errors (see Figure 4).
In some situations it is possible to receive errors during the check process, especially segment length errors. The incorrect IDOC segment can be repaired and corrected by executing program RSEREPSG. This program checks the formal consistency and repairs incorrect segments. In test mode it will generate a log of formal correctness for the specified segment only. For the program to repair segments in normal mode, the underlying IDOC structures (DDIC structures) must be active. This program rectifies the lengths of the DDIC structures and not the fields themselves. RSEREPSG can also be used to change the person responsible for the object and the release flag.
Menu paths may vary slightly depending on the release/version of SAP R/3, but the procedures and the principles are the same.
ALE FUNCTION MODULE ENHANCEMENTS
Having extended the IDOC type to contain additional fields for an inbound or outbound application, you now want to enhance ALE function modules for populating the additional segment on the outbound or applying the additional segment data on the inbound application.
The core working code for ALE processes for a given application area is always encapsulated in ABAP/4 function modules. These function modules are associated with such control information as message types and process codes. So the ALE process checks this control information and derives the name of the function module to invoke for that particular IDOC processing from certain database tables. These function modules contain objects known as customer functions, which can be considered SAP Enhanced user exits. A function module is called at a particular point during the processing of the main program or function module, and it can be used to influence data processing at that point by adding code to the customer function. The customer function behaves like a normal function module and has import and export parameters, tables (internal tables) statement, and exception processing. Unlike a conventional user exit, customer functions give you the ability to modify only data available to you by the function moduleâs parameters and internal tables. While most ALE/EDI function modules are supported by customer functions, there are ALE/EDI processes that still use conventional user exits. There are a few ways to determine which function module to enhance for a given message type/process code:
For master data distribution, from SALE go to Extensions -> Master data distribution -> Setup additional data for message types. Search for message type DEBMAS in this example. You see an entry for DEBMAS associated with function module MASTERIDOC_CREATE_SMD_DEBMAS. This data is stored on table TBDME. The function module names for all master data message types follow this pattern: MASTERIDOC_CREATE_SMD_messagetype. This function module calls another function module of name MASTERIDOC_CREATE_DEBMAS or MASTERIDOC_CREATE_messagetype. Search for the words customer function, and you find several hits that can be used to add code to the function module.
From WEDI got to Control -> Inbound process codes -> Inbound with ALE service -> Processing by function module (transaction WE42), or from WEDI go to Control -> Outbound process codes -> Outbound with ALE service -> With function module (transaction WE41). There will be function modules associated with the process codes. For inbound, the function modules usually follow this pattern: IDOC_INPUT_messagetype: for example, IDOC_INPUT_CHRMAS for inbound characteristics master.
Use transaction WE57 or from WEDI go to Development -> Message/Application Object. The entries list the function module, Business Object, message type, and IDOC type that are used for inbound ALE/EDI interfaces.
Customer functions are not specific only to ALE and EDI but also to all programs/modules in SAP R/3. Customer function is a SAP enhancement component; the other two types are menu and screen enhancements.
All customer function exits are maintained in SAP enhancements and are found by using transaction SMOD. After executing transaction SMOD, pull down (F4) on the enhancement name field, and execute again. This provides you with a list of all SAP enhancements available. SAP enhancements are grouped by development class pertaining to an application area. Choose Application development R/3 SD master data distribution for development class VSV to lead to a screen that lists VSV00001 as an enhancement (see Figure 5). Press Component +/- to display its function exit components. There are four possible components listed, all of which are function exits (and are function modules) that are called from the ALE function modules in the form Call Customer Function Î001â. This is a special occurrence of the ABAP statement Call. Go to item Exit_SAPLVV01_ 001, which you need to enhance for the Customer Master outbound example of an IDOC extension. In the ALE-function module MASTERIDOC_CREATE_DEBMAS, the statement CALL Customer Function 001 is translated in the background to call component EXIT_SAPLVV01_001. Although this function exit can be edited using transaction SE37, you will use a simpler approach.
When you use SAP enhancements and their components, you manage them with an SAP object known as a project, which is like an envelope containing the selected enhancements and their components. A project can be used to control the execution of components and to transport them to other clients and instances in SAP. Basically, the process involves creating a project, including enhancements and components that are to be enhanced, editing the components, and then activating the project. The following process creates a project for our example Customer Master IDOC extension:
Execute transaction CMOD.
Enter name of project, say CSTMAST1.
Click on Create.
Enter a description of the project.
Save.
Click on SAP Enhancements.
Enter VSV00001 for Enhancement.
Save.
Once youâve created the project, edit the function exit components and activate the project. Remember that the code in the function exit enhancement will execute only if the project is activated. In fact, this is a convenient SAP enhancements feature, whereby the work in progress (developing code in the customer function) will not affect users of that application. When the code is completed, the project can be activated so the enhanced functionality takes effect. It can also be deactivated for maintenance.
As mentioned earlier, customer functions (function exits) are embedded in ALE function modules and can be used to influence the creation and modification of IDOC data on an outbound application or to post additional or modified IDOC data to an inbound R/3 application. Function exits are similar to regular function modules, with import/export parameters, tables (internal tables), and exceptions.
The two important factors to consider while developing the customer function are:
1. The point in the ALE function module where the function exit occurs
2. The data made available by the customer function that can be modified or posted to the R/3 application, based on the direction.
Because some function modules have several customer functions, it is critical to choose the function exit best suited for that particular enhancement. Do not attempt to perform activities that the function exit is not designed for. The importance of this point is illustrated by the following description of enhancing function modules for outbound and inbound ALE interfaces.
Outbound interfaces. In an outbound ALE interface you use function exits (customer functions) to populate additional segments created by an IDOC extension or to modify the existing IDOC data segments as per business requirements. Previously, you identified that enhancement VSV00001 has a component EXIT_SAPLVV01_001 (function exit), which can be used for populating the additional data segment Z1SADRX that you created in the IDOC extension ZDEBMASX (IDOC type ZDEBMASZ, based on Basic IDOC type DEBMAS02). You also learned that the ALE function module that calls this function exit is MASTERIDOC_CREATE_DEBMAS, which has a statement Call Customer Function 001.
Browse the function module MASTERIDOC_CREATE_DEBMAS using transaction SE37. You will find that this customer function is invoked for every segment of IDOC type DEBMAS02. In fact, the function exit is called soon after the creation of an existing segment has been populated with data and appended to the IDOC data table (internal table). Also, the function exit is exporting the message type, IDOC type, and the segment name and is importing the IDOC extension type. It is also passing the IDOC data internal table. This indicates that the ALE function module is allowing you to populate additional segments for every existing segment and modify the existing segmentâs data.
Letâs write ABAP/4 code to accomplish the task of populating IDOC segment Z1SADRX with a contact personâs business address:
From SE37, display function module MASTERIDOC_CREATE_ DEBMAS.
Find Customer Function 001.
Double-click on 001.
The function EXIT_SAPLVV01_001 will be displayed.
Double-click on INCLUDE ZXVSVU01.
You will be asked to create a new include object. Proceed as desired.
Enter code (as in Listing 1).
Be sure to perform a main program check (Function Module -> Check -> main program) and extended program check (Function module -> Check -> Extended check).
Now that you have extended the IDOC and enhanced the ALE function module based on the requirements for the contact personâs business address on the Customer Master, letâs test the interface. You should create a logical system and define a port for this interface. You should also configure the Customer Distribution Model to indicate that message type DEBMAS is being distributed to this logical system. The only difference in configuration between a regular outbound ALE interface and an enhanced one is the partner profile definition. While maintaining the outbound parameters of the partner profile, make sure the IDOC type is ZDEBMASZ. The fields for Basic IDOC type and extension type are automatically populated with DEBMAS02 and ZDEBMASX, respectively.
To maintain the contact personâs business address of a customer:
Use transaction BD12 or from BALE go to Master Data ->Customer -> Send and send that Customer Master record by executing the transaction after filling in the relevant fields such as customer number, message type, and logical system.
Use transaction WE02 or WE05 to verify the IDOC created. You should see the new segment Z1SADRX populated with the correct data.
Reward if Helpful. -
Use of "DBA_OBJECTS" in "AFTER CREATE" Trigger
Hi,
We would like to store some extra information about our objects we have in the database. To do so we tought of the idea of creating a 'documenting' table containing an object_id that references to the object_id from the view dba_views.
Now we want to automatically create a new record in our documenting table when a new object is created, in the first stage this should only contain the object_id
To accomplish this we are using an 'AFTER CREATE' trigger, but when this trigger fires and the code searches for the new object_id in dba_objects, it does not return any records and generates an error. Likely because when the trigger is executed, the view is not yet updated?
create or replace
TRIGGER TRG_TEST
AFTER CREATE ON SCOTT.SCHEMA
DECLARE
tmp VARCHAR2(50);
BEGIN
dbms_output.put_line(ora_dict_obj_name);
select object_id
into tmp
from dba_objects
where object_name = ora_dict_obj_name;
dbms_output.put_line(tmp);
END;
Error report:
ORA-04088: Fout bij uitvoering van trigger 'SCOTT.TRG_TEST'.
ORA-01403: Geen gegevens gevonden.
ORA-06512: in regel 6
04088. 00000 - "error during execution of trigger '%s.%s'"
*Cause: A runtime error occurred during execution of a trigger.
*Action: Check the triggers which were involved in the operation.
It's in dutch, so I'll have a go at translating:
Error report:
ORA-04088: Exception while executing trigger 'SCOTT.TRG_TEST'.
ORA-01403: No data found
ORA-06512: in rule 6
04088. 00000 - "error during execution of trigger '%s.%s'"
*Cause: A runtime error occurred during execution of a trigger.
*Action: Check the triggers which were involved in the operation.
Does anyone have an idea of how I can accomplish what I'm trying to do here.. Or maybe something I'm doing wrong?
Thanks in advance!
DavyWhat is "ora_dict_obj_name" defined as?
Another option might be to setup a DBMS_SCHEDULER job to run the following insert
firstly though, create the following table ;
create document_table as (select * from dba_objects where rownum < 1)and then setup a DBMS_SCHEDULER job to run the following:
begin
insert into document_table
(select dbo.*
from dba_objects dbo
,document_Table dtb
where dbo.Object_ID = dtb.Object_ID(+)
and dtb.Object_ID is null);
commit;
exception
when others then
rollback;
-- log a message somewhere with the error, i.e. SQLERRM
end;
/Note, I specified all columns, but you'll probably specify explicitly which column you require, in which case the CREATE table would change as well.
Then you won't have a need for any trigger, and can better manage when you want your documentation to be updated.
Another option might be to use COMMENT, which can be used on tables, views, materialized views, but won't cover all objects
to the extent you might want.
SQL> desc emp2
Name
EMPNO
JOB
START_DATE
SAL
DEPT
END_DATE
SQL> comment on column emp2.sal is 'Existing Salary of employee as paid at most recent month end'; -
Hi
I had created IDOCS by following this procedure
<b>Step 1 Analyse Hierarchy Levels:</b>
Analyse the data relationships being processed in the interface. Define the appropriate hierarchical Parent-to-Child relationships.
Navigate to transaction code WEDI
Transaction WEDI displays the IDOC main menu. This allows navigation around the various development and control areas to create a customised IDOC.
<b>Step 2 Create a new segment:</b>
via wedi : Development - IDOC Segments or Transaction code WE31.
Enter segment name and click on Create.
The name of the segment type must start with Z1 , and have a maximum of eight characters.
Enter description and enter the relevant field names and data elements.
The segment should represent a structure in the program so for each field in the segment a field name and a data element must be defined.
Save the segment and enter Person Responsible and Processing Person .
Go to Edit and Set Release.
Repeat this procedure for each new Segment in the IDOC.
<b>Step 3 Create a new IDOC Type</b>
via wedi Development - IDOC Types or Transaction WE30.
Enter segment name (starting with Z), click on Basic Type and then Create.
Create as new, enter Person Responsible and Processing Person and enter description.
On Create Basic Type screen decide where segments should be inserted and go to Edit/Create Segment.
Complete relevant fields in the Maintain Attributes screen:
From the relevant segments created in Step 2 enter the Segment type and if mandatory segment.
The Minimum and Maximum number of segments to be allowed in the sequence. (One minimum and one maximum if segment is mandatory).
The Parent Segment and Hierarchy Level will be automatically created depending on where in the IDOC tree you decided to create that particular segment.
Repeat this process for each segment needed in the IDOC type, deciding whether to add the next segments at the same level or as a Child.
When IDOC created return to initial screen. Go to Edit and Set Release.
Go to Transaction WE60 to view the IDoc Type you have created.
<b>Step 4 Create new Message Type</b>
via wedi Development - Message Types or Transaction WE81.
Display/Change and click on New Entries
Create a new Message Type and Save.
<b>Step 5 Link Message Type to IDOC Type</b>
via wedi Development - IDOC Type/Message or Transaction WE82.
Display/Change and then click on New Entries.
Enter Message Type, Basic Type (IDOC Type) and Release (46C) and Save.
<i><b>Now my problem from this step</b></i>
<b>Step 6 Create an entry in EDP13 via transactions WE20 and BD64.</b>
The partner profile for the Idoc must be set up and generated in the transaction BD64 and transaction WE20.
WE20 Add Message Type to appropriate Partner Type, Enter Message Type, Receiver Port and Idoc Type and Save.
BD64 Create a Model View, Enter Sender and Receiver Ports, Attach Message Type. Go to Environment on Menu and click on Generate Partner Profiles and generate (not save) profile.
<i><b>From where i have to add message type to partner type</b></i>
Can any one explain me clearly step by step after this step
Helpfull points will be surely rewarded
Regards
PavanHi Pavan,
You have the Partner number? which is nothing but your Logical system name or vendor or customer. I think in your case, it is Logical system.
Select or create an logical system. If already exist, select the option LS in the left hand side and display it. IN WE20. Now, give you Message type and save it.
But, If we say in your case as ALE, Goto Tcode SALE, Nagivate and create logical system for sender and reciver.
2. Then assign these Logical system to the clients.
3. GOto Tcode SM59 and create RFC destination.
4.Tcode- BD64 , Display it and select create model view options. and save it.
5. Now, go for Assign message type and assingn the message type alon with your logical system name for recevier and sender.
6. Goto Status bar ENVIRONMENT and select generate partner profile. Automatically, a partner profile will be generated.
7.Now GOTO EDIT , Model view -
distribute.
Thanks
Manju. -
SD How to create IDoc once Sales Order Invoice (Billing) has been created ?
Hi,
How to create IDoc once Sales Order Invoice (Billing) has been created ?
I.e Once you click on save button of Invoice , IDoc Should genrate Automatically.
ThanksHello,
Go to T.code VV31 and select the billing output type and select the access sequence required and in the details screen of create condition records give all the required entries for eg: may be Billing Type, Sales Organsiation etc.and in the medium choose the option as 6(EDI) and time select as 4 that is immediately after saving the document.Also please ensure that particular partners for whom idoc should be generated they need to have partner profile setup with the billing message types. Hope this helps. -
STEPS for creating IDOC .
I need to creat IDOC for whenever delivery is created .
Hi
Take the correct Idoc type and Message Type and process code from EDBAS and EDMSG tables and use
see the doc
Data Creation in Idoc
IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an
asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps.
While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario.
IDoc is a intermediate document to exchange data between two SAP Systems.
*IDocs are structured ASCII files (or a virtual equivalent).
*Electronic Interchange Document
*They are the file format used by SAP R/3 to exchange data with foreign systems.
*Data Is transmitted in ASCII format, i.e. human readable form
*IDocs exchange messages
*IDocs are used like classical interface files
IDOC types are templates for specific message types depending on what is the business document, you want to exchange.
WE30 - you can create a IDOC type.
An IDOC with data, will have to be triggered by the application that is trying to send out the data.
FOr testing you can use WE19.
How to create idoc?
*WE30 - you can create a IDOC type
For more information in details on the same along with the examples can be viewed on:
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
http://www.sappoint.com/presentation.html
http://www.allsaplinks.com/idoc_search.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://www.erpgenie.com/sapedi/idoc_abap.htm
To Create Idoc we need to follow these steps:
Create Segment ( WE31)
Create Idoc Type ( WE30 )
Create Message Type ( WE81 )
Assign Idoc Type to Message Type ( WE82 )
Creating a Segment
Go to transaction code WE31
Enter the name for your segment type and click on the Create icon
Type the short text
Enter the variable names and data elements
Save it and go back
Go to Edit -> Set Release
Follow steps to create more number of segments
Create IDOC Type
Go to transaction code WE30
Enter the Object Name, select Basic type and click Create icon
Select the create new option and enter a description for your basic IDOC type and press enter
Select the IDOC Name and click Create icon
The system prompts us to enter a segment type and its attributes
Choose the appropriate values and press Enter
The system transfers the name of the segment type to the IDOC editor.
Follow these steps to add more number of segments to Parent or as Parent-child relation
Save it and go back
Go to Edit -> Set release
Create Message Type
Go to transaction code WE81
Change the details from Display mode to Change mode
After selection, the system will give this message The table is cross-client (see Help for further info). Press Enter
Click New Entries to create new Message Type
Fill details
Save it and go back
Assign Message Type to IDoc Type
Go to transaction code WE82
Change the details from Display mode to Change mode
After selection, the system will give this message The table is cross-client (see Help for further info). Press Enter.
Click New Entries to create new Message Type.
Fill details
Save it and go back
Check these out..
Re: How to create IDOC
Check below link. It will give the step by step procedure for IDOC creation.
http://www.supinfo-projects.com/cn/2005/idocs_en/2/
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs
go trough these links.
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data...
1.IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables.
2.IDOCs are independent of the sending and receiving systems.
3.IDOCs are independent of the direction of data exchange.
The two available process for IDOCs are
Outbound Process
Inbound Process
AND There are basically two types of IDOCs.
Basic IDOCs
Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
Extended IDOCs
Extending the functionality by adding more segments to existing Basic IDOCs.
To Create Idoc we need to follow these steps:
Create Segment ( WE31)
Create Idoc Type ( WE30)
Create Message Type ( WE81)
Assign Idoc Type to Message Type ( WE82)
imp links
http://www.allsaplinks.com/idoc_sample.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
www.sappoint.com
--here u can find the ppts and basic seetings for ALE
http://sappoint.com/presentation.html
www.sapgenie.com
http://www.sapgenie.com/ale/index.htm
WE30 - you can create a IDOC type.
An IDOC with data, will have to be triggered by the application that is trying to send out the data.
Try this..Hope this will help.
>>>> SAP ALE & IDOC<<<<
Steps to configuration(Basis) >>
1. Create Logical System (LS) for each applicable ALE-enabled client
2. Link client to Logical System on the respective servers
3. Create background user, to be used by ALE(with authorizaton for ALE postings)
4. Create RFC Destinations(SM59)
5. Ports in Idoc processing(WE21)
6. Generate partner profiles for sending system
The functional configuration(Tcode: SALE)
Create a Customer Distribution Model (CDM);
Add appropriate message types and filters to the CDM;
Generate outbound partner profiles;
Distribute the CDM to the receiving systems; and
Generate inbound partner profiles on each of the clients.
Steps to customize a new IDoc >>>
1. Define IDoc Segment (WE31)
2. Convert Segments into an IDoc type (WE30)
3. Create a Message Type (WE81)
4. Create valid Combination of Message & IDoc type(WE82)
5. Define Processing Code(WE41 for OUT / WE42 for IN)
6. Define Partner Profile(WE20)
Important Transaction Codes:
SALE - IMG ALE Configuration root
WE20 - Manually maintain partner profiles
BD64 - Maintain customer distribution model
BD71 - Distribute customer distribution model
SM59 - Create RFC Destinations
BDM5 - Consistency check (Transaction scenarios)
BD82 - Generate Partner Profiles
BD61 - Activate Change Pointers - Globally
BD50 - Activate Change Pointer for Msg Type
BD52 - Activate change pointer per change.doc object
BD59 - Allocation object type -> IDOC type
BD56 - Maintain IDOC Segment Filters
BD53 - Reduction of Message Types
BD21 - Select Change Pointer
BD87 - Status Monitor for ALE Messages
BDM5 - Consistency check (Transaction scenarios)
BD62 - Define rules
BD79 - Maintain rules
BD55 - Defining settings for IDoc conversion
WEDI - ALE IDoc Administration
WE21 - Ports in Idoc processing
WE60 - IDoc documentation
SARA - IDoc archiving (Object type IDOC)
WE47 - IDoc status maintenance
WE07 - IDoc statistics
BALE - ALE Distribution Administration
WE05 - IDoc overview
BD87 - Inbound IDoc reprocessing
BD88 - Outbound IDoc reprocessing
BDM2 - IDoc Trace
BDM7 - IDoc Audit Analysis
BD21 - Create IDocs from change pointers
SM58 - Schedule RFC Failures
Basic config for Distributed data:
BD64: Maintain a Distributed Model
BD82: Generate Partner Profile
BD64: Distribute the distribution Model
Programs
RBDMIDOC Creating IDoc Type from Change Pointers
RSEOUT00 Process all selected IDocs (EDI)
RBDAPP01 - Inbound Processing of IDocs Ready for Transfer
RSARFCEX - Execute Calls Not Yet Executed
RBDMOIND - Status Conversion with Successful tRFC Execution
RBDMANIN - Start error handling for non-posted IDocs
RBDSTATE - Send Audit Confirmations
FOr testing you can use WE19.
<b>Reward points for useful Answers</b>
Regards
Anji -
Create IDOC when the credit memo is generated
I want to create an IDOC.
The IDOC will be created when the credit memo is generated.
Please help me to create the segments.
Title was edited by:
Alvaro Tejada GalindoHi
First you find the relative Idoc Type and Message type for that credit memo in the tables EDBAS and EDMSG
Then go to WE31 and create the additional segments as per your requirements apart from doing lot of other related settings
see the doc
Data Creation in Idoc
IDocs are text encoded documents with a rigid structure that are used to exchange data between R/3 and a foreign system. Instead of calling a program in the destination system directly, the data is first packed into an IDoc and then sent to the receiving system, where it is analyzed and properly processed. Therefore an IDoc data exchange is always an
asynchronous process. The significant difference between simple RFC-calls and IDoc data exchange is the fact, that every action performed on IDocs are protocolled by R/3 and IDocs can be reprocessed if an error occurred in one of the message steps.
While IDocs have to be understood as a data exchange protocol, EDI and ALE are typical use cases for IDocs. R/3 uses IDocs for both EDI and ALE to deliver data to the receiving system. ALE is basically the scheduling mechanism that defines when and between which partners and what kind of data will be exchanged on a regular or event triggered basis. Such a set-up is called an ALE-scenario.
IDoc is a intermediate document to exchange data between two SAP Systems.
*IDocs are structured ASCII files (or a virtual equivalent).
*Electronic Interchange Document
*They are the file format used by SAP R/3 to exchange data with foreign systems.
*Data Is transmitted in ASCII format, i.e. human readable form
*IDocs exchange messages
*IDocs are used like classical interface files
IDOC types are templates for specific message types depending on what is the business document, you want to exchange.
WE30 - you can create a IDOC type.
An IDOC with data, will have to be triggered by the application that is trying to send out the data.
FOr testing you can use WE19.
How to create idoc?
*WE30 - you can create a IDOC type
For more information in details on the same along with the examples can be viewed on:
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm#_Toc8400404
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a6620507d11d18ee90000e8366fc2/frameset.htm
http://www.sappoint.com/presentation.html
http://www.allsaplinks.com/idoc_search.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://www.erpgenie.com/sapedi/idoc_abap.htm
To Create Idoc we need to follow these steps:
Create Segment ( WE31)
Create Idoc Type ( WE30 )
Create Message Type ( WE81 )
Assign Idoc Type to Message Type ( WE82 )
Creating a Segment
Go to transaction code WE31
Enter the name for your segment type and click on the Create icon
Type the short text
Enter the variable names and data elements
Save it and go back
Go to Edit -> Set Release
Follow steps to create more number of segments
Create IDOC Type
Go to transaction code WE30
Enter the Object Name, select Basic type and click Create icon
Select the create new option and enter a description for your basic IDOC type and press enter
Select the IDOC Name and click Create icon
The system prompts us to enter a segment type and its attributes
Choose the appropriate values and press Enter
The system transfers the name of the segment type to the IDOC editor.
Follow these steps to add more number of segments to Parent or as Parent-child relation
Save it and go back
Go to Edit -> Set release
Create Message Type
Go to transaction code WE81
Change the details from Display mode to Change mode
After selection, the system will give this message The table is cross-client (see Help for further info). Press Enter
Click New Entries to create new Message Type
Fill details
Save it and go back
Assign Message Type to IDoc Type
Go to transaction code WE82
Change the details from Display mode to Change mode
After selection, the system will give this message The table is cross-client (see Help for further info). Press Enter.
Click New Entries to create new Message Type.
Fill details
Save it and go back
Check these out..
Re: How to create IDOC
Check below link. It will give the step by step procedure for IDOC creation.
http://www.supinfo-projects.com/cn/2005/idocs_en/2/
ALE/ IDOC
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.docs
go trough these links.
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.sappoint.com/abap/ale.pdf
http://www.sappoint.com/abap/ale2.pdf
http://www.sapgenie.com/sapedi/idoc_abap.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
http://www.allsaplinks.com/idoc_sample.html
http://www.sappoint.com/abap.html
http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
http://www.sapgenie.com/sapedi/index.htm
http://www.allsaplinks.com/idoc_sample.html
http://http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data...
1.IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables.
2.IDOCs are independent of the sending and receiving systems.
3.IDOCs are independent of the direction of data exchange.
The two available process for IDOCs are
Outbound Process
Inbound Process
AND There are basically two types of IDOCs.
Basic IDOCs
Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
Extended IDOCs
Extending the functionality by adding more segments to existing Basic IDOCs.
To Create Idoc we need to follow these steps:
Create Segment ( WE31)
Create Idoc Type ( WE30)
Create Message Type ( WE81)
Assign Idoc Type to Message Type ( WE82)
imp links
http://www.allsaplinks.com/idoc_sample.html
http://www.sapgenie.com/sapedi/idoc_abap.htm
www.sappoint.com
--here u can find the ppts and basic seetings for ALE
http://sappoint.com/presentation.html
www.sapgenie.com
http://www.sapgenie.com/ale/index.htm
WE30 - you can create a IDOC type.
An IDOC with data, will have to be triggered by the application that is trying to send out the data.
Try this..Hope this will help.
>>>> SAP ALE & IDOC<<<<
Steps to configuration(Basis) >>
1. Create Logical System (LS) for each applicable ALE-enabled client
2. Link client to Logical System on the respective servers
3. Create background user, to be used by ALE(with authorizaton for ALE postings)
4. Create RFC Destinations(SM59)
5. Ports in Idoc processing(WE21)
6. Generate partner profiles for sending system
The functional configuration(Tcode: SALE)
Create a Customer Distribution Model (CDM);
Add appropriate message types and filters to the CDM;
Generate outbound partner profiles;
Distribute the CDM to the receiving systems; and
Generate inbound partner profiles on each of the clients.
Steps to customize a new IDoc >>>
1. Define IDoc Segment (WE31)
2. Convert Segments into an IDoc type (WE30)
3. Create a Message Type (WE81)
4. Create valid Combination of Message & IDoc type(WE82)
5. Define Processing Code(WE41 for OUT / WE42 for IN)
6. Define Partner Profile(WE20)
Important Transaction Codes:
SALE - IMG ALE Configuration root
WE20 - Manually maintain partner profiles
BD64 - Maintain customer distribution model
BD71 - Distribute customer distribution model
SM59 - Create RFC Destinations
BDM5 - Consistency check (Transaction scenarios)
BD82 - Generate Partner Profiles
BD61 - Activate Change Pointers - Globally
BD50 - Activate Change Pointer for Msg Type
BD52 - Activate change pointer per change.doc object
BD59 - Allocation object type -> IDOC type
BD56 - Maintain IDOC Segment Filters
BD53 - Reduction of Message Types
BD21 - Select Change Pointer
BD87 - Status Monitor for ALE Messages
BDM5 - Consistency check (Transaction scenarios)
BD62 - Define rules
BD79 - Maintain rules
BD55 - Defining settings for IDoc conversion
WEDI - ALE IDoc Administration
WE21 - Ports in Idoc processing
WE60 - IDoc documentation
SARA - IDoc archiving (Object type IDOC)
WE47 - IDoc status maintenance
WE07 - IDoc statistics
BALE - ALE Distribution Administration
WE05 - IDoc overview
BD87 - Inbound IDoc reprocessing
BD88 - Outbound IDoc reprocessing
BDM2 - IDoc Trace
BDM7 - IDoc Audit Analysis
BD21 - Create IDocs from change pointers
SM58 - Schedule RFC Failures
Basic config for Distributed data:
BD64: Maintain a Distributed Model
BD82: Generate Partner Profile
BD64: Distribute the distribution Model
Programs
RBDMIDOC Creating IDoc Type from Change Pointers
RSEOUT00 Process all selected IDocs (EDI)
RBDAPP01 - Inbound Processing of IDocs Ready for Transfer
RSARFCEX - Execute Calls Not Yet Executed
RBDMOIND - Status Conversion with Successful tRFC Execution
RBDMANIN - Start error handling for non-posted IDocs
RBDSTATE - Send Audit Confirmations
FOr testing you can use WE19.
Regards
Anji -
How to transfer Customers to GTS immedeately after creating Customer master
Hi Folks,
Is there a possibility to transfer Customers to GTS immediately after creating Customer master.
I know /SAPSLL/DEBMAS_DISTRIBUTE_R3, but this report should run only at night,
becaus performance...
So the question is, right after creating the customer you can enter a sales order
and in this situation the customer is not in GTS.
We want to transfer the customer automatically right after(or while) creating the customer to GTS.
Is there any way to obtain this?
Thanks
Regards
DieterHello Dieter,
unfortunately it not possible to have it done immediately when you create/change a partner.
These data changes are transferred to GTS via change pointers.
You can schedule the change pointers report every 10 minutes but still it has to be done as bgr. job.
At first Activate Change Pointers for Message Types (BD50)
/SAPSLL/DEBMAS_SLL
and Activate Change Pointers for Reduced Messages - Press create icon to create it. (BD53)
/SAPSLL/DEBMAS_SLL
Then schedule RBDMIDOC for /SAPSLL/DEBMAS_SLL which send changes via IDoc.
Cheers,
Gabriel. -
Auto triggering after creating change pointer
Hi,
Has anyone setup their ALE Master Data Distribution to trigger program RBDMIDOC automatically after creating a change pointer?
Cheers,
Neil.Hi Neil,
The program RBDMIDOC needs to be scheduled to run in backgroung by creating a variant for Messge Type with the Message Type you are using for your Master Data Distribution, and with the option 'Only for Background Proc.'.
Also schedule the program RBDCPCLR for periodic execution in Background. All change ptrs generated by the program RBDMIDOC will bedeeted y the system.
Regards,
Nitin -
Send automaticly a report after generation
HI,
how to send a report (the result of tcode MB52 for exemple) automaticly by mail after generation by job.
thxHi Anda,
You can take the help of a basis Person, Via T-code SM36, create a variant in MB52, and keep on running the same variant and save it,
create the recipient group for whoom you want to send the, copy the Program name for MB52 (RM07MLBS), and goto SM36, give in the program and recipient list.
then goto SM37, run the Back ground job,
BUt it is not as easy as Explained., But you can always take help from the BASIS guy.
Hope it helps you.
Regards,
YK -
Hi all
I m facing problem to upload data through idoc.the scenario is like we receive electric meter reading in flat file format. And to upload that data JAVA code is written which will create an IDOC FILE this authorization is only give to 2-3 person in organization and to basis guy also as user changed its password in SAP and in JAVA the java code is not going to create the IDOC file and data is not going to upload. after changing user password in sap system ,user not able to upload the data.
ISU_MR_UPLOAD01 is the idoc file generated. So is there any authorization issue, password issue how to see and view IDOC IN SAP, can any one help me out into this.
The error with java throws is as;
1ST ERROR IN TRACE FILE
ERROR file opened at 20061109 133610 India Standard, SAP-REL 640,0,59 RFC-VER 3 MT-SL
T:2736 ======> User TR has no RFC authorization for function group SYST .
T:2736 <* RfcReceive [1] : returns 3:RFC_SYS_EXCEPTION
2ND ERROR ON COMMAND PROMT
C:\j2sdk1.4.2_07>cd bin
C:\j2sdk1.4.2_07\bin>java sandsupload
Creating IDoc...Exception in thread "main" com.sap.mw.idoc.IDoc$Exception: (2) I
DOC_ERROR_METADATA_UNAVAILABLE: The meta data for the IDoc type "ISU_MR_UPLOAD01
" is unavailable.
at com.sap.mw.idoc.jco.JCoIDoc$JCoDocument.<init>(JCoIDoc.java:233)
at com.sap.mw.idoc.jco.JCoIDoc$JCoDocument.<init>(JCoIDoc.java:187)
at com.sap.mw.idoc.jco.JCoIDoc.createDocument(JCoIDoc.java:10521)
at sandsupload.main(sandsupload.java:35)
the part of java code
try {
//create a JCo client pool
JCO.addClientPool( "MyPool", //pool name
3, //maximum pool connections
"333", //SAP client
" TR", //user ID
" XYZ", //password
"EN", //language
" 1.1.1.1 ", //app server host name
"00" ); //system number
//create an IDoc repository
IDoc.Repository idocRep = JCoIDoc.createRepository("MyIDocRepository", "MyPool");
//create a new and empty MATMAS02 document
System.out.print("Creating IDoc...");
Line where it shows error
IDoc.Document doc = JCoIDoc.createDocument(idocRep, "ISU_MR_UPLOAD01");
//get the root segment from the document
//The root segment does not contain any fields or data. It is only
//used as the standard parent segment and won't be transmitted when
//the document is sent to an SAP system.
IDoc.Segment segment = doc.getRootSegment();
//create and add a new and empty child segment of type E1MARAM
//and fill the segment dataHi Gaurav,
Same exception on the same line has been reported and marked as solved here :
IDOC_ERROR_METADATA_UNAVAILABLE:
Btw, I think this forum is not visited often by JCO and ABAP connectivity experts, so maybe you could get a faster response to your problems while posting in "Java Programming" or maybe in some forum under the category ABAP Development.
HTH
Peter
Maybe you are looking for
-
Fact sheet to show up Campaign Elements
Hi, Is it possible to show Campaign Elements in Fact sheet. Campaign element needs to be based on the customer which is in Target group of that particular BP. It is not on the basis of Employee responsible of campaign element. Say for example if cus
-
Usgent: using jsp date in sql select statement
i have something like this: String day; String month; String year; select * from event where date = xxx where xxx is supposed to be obtained from the strings (day, month, year) and changed into a format that can be compared to in the select statement
-
Mac Pro Retina stalls on start up! Urgent!
My Mac Pro is stalling on start up. The loading bar gets half way and then stalls. I have reset the p ram and the smc. I have attached a photo of the verbose start up. I desperately need to get this working. Thanks
-
Random double between -10.0 and 10.0
I think the subject says it all really... How can I create a random double between -10.0 and 10.0? Any help would be appreciated, Ols
-
Hello all, Can anybody help me to get the file name which is specified in the path like C:/programs/folder/example.txt" or "C:/programs/folder/test.txt" or "C:/programs/example/verify.txt" . The path name will change dynamically in my program. What I