Tables updated after IDOC posting
Hi All,
I am having a requirement in which I am using a custom function module to create and post an IDOC. The program is taking data from flat file and passing it to the function module IDOC_INBOUND_SINGLE which calls a BAPI BAPI_ACC_INVOICE_RECEIPT_POST to post the IDOC.
For posting IDOCS, IDOC type ACC_INVOICE_RECEIPT03 is being used.
I wanted to know after execution of the FM, which are the tables being updated after posting of IDOC.
Thanks in advance.
regards,
gaurav
YOu can do a trace to find all the tables that get updated.
Go to ST05 transaction.
Start the trace.
Run your inbound IDOC process.
Go to ST05 again and decativte the trace.
View the trace to find the tables that are Updated.
Regards,
Ravi
Similar Messages
-
Table updation after Invoice parking/ posting through FBV1
Hello Everybody,
Can anybody help me to know what are the tables are updating after parking and posting the FI invoice through transaction code FBV1 and what is the process to check what tables are updated ..
thanks a lot in advance..
Regards,
UmakantaHi Any views
Suresh -
Is ANLC table updated when you post a legacy transaction?
Hi,
We are in the process of converting data to a new system. We have a previous year retirement posted as a legacy transaction (AS92). The ANEP table (asset line items) was updated and reflects this change. However, we noticed that this legacy transaction is not reflected in the ANLC table (asset value fields).
Is there a possible way to update ANLC when a legacy transaction is posted?
Thanks,
JoeyHello Paul,
With AS91 these values should be updated in ANLC The fields ***. acquis. val, Accm.ord. deprec. and ther should be no values in ANEP when you have used the takeover values screen.
True enough, the ANLC table reflects the ***. acquis. val accm. ord. deprec when the takeover values screen was first used. ANEP doesn't show this which is okay.
But in the AS92 transaction where we posted a retirement from previous yr in the current year, values are only reflected in ANEP. Is it normal for legacy transactions (other than beginning APC & ord. dep) to appear only in ANEP and not in ANLC?
Thanks,
Joey -
Table data getting locked for multiple user for a Z-table updation after EH4 to EHP6 Upgrade
Hi,
We have one new upgraded system at EHP6, earlier system was at EH4 where multiple user can Run one Z T-code and can edit the entries for the Z-table.
This Z-Tcode is calling SM30 internally for updating the Z-Table.
Now in the upgraded system, when one user is into the transation code, and other user runs that T-code, systems throws a POP-UP mesg saying that the data is locked and can be displayed only(can not be edited).
I have debugged the code in both the environment and found that there is one statement Call C_ENQUEUE ID < > field. for which the Sy_Subrc is coming as 2 in the upgraded system which is causing the issue, where as the sy-subrc is 0 in the system at EH4 level.
Can any body tell me why this Z-tcode is not allowing to be accessed by multiple user at same time for Editing(updating the table) .
Regards,
Archana JhaHi,
When you create the lock object you can define the keys.
and then you can use those in the ENQUEUE function.
Regards.
regards. -
Problem in MSEG Table updation
Hello All,
The problem is related to MSEG table updation after Stock Transport Order (STO) is done between Manufacturing plant & Depot. The problem is described below with an example.
In case of STO the Supplying Plant or vendor is SP02 and the Receiving Plant or the customer is RP15.in the STO under the shipping tab for Customer the system is showing RP15 and under the Delivery address tab for Vendor the system is showing SP02.
While during PGI when the material document is generated when we check the MSEG table two line items have been generated where we found that the field WERKS contained SP02 & RP15 against which the feld XAUTO is showing blank space & X symbol respectively.But in case of both LIFNR & KUNNR fields it is showing blank space, which indicates that both the vendor & customer fields are not getting updated in the MSEG table.
Now I want the system to pick up the data for KUNNR field (in case of XAUTO is X) also in the MSEG table i.e. RP15 should also be displayed in the MSEG table.
Is there any configuration to attain my requirement?
Looking forward to some valuable suggestions.
Thanks & Regards
Priyanka Mitrathe ADRx tables are central tables that are used from various transactions in SAP.
e.g. from customizing, master data maintenance, transactional data, such as purchase orders and sales orders.
use the ADRNR from ADR6 table and then lookup an entry in table ADRC to find and hint to its origin field ADDR_GROUP -
IDOC:Master Data Records are not going to be updated after posting the IDOC
I need to create employee Master data records in R/3 .I am using the IDOC HRMD_A07, though the IDOC posting is successful no tables, corresponding to employee master Data are getting updated,
Can anybody plz Let me know the possible reasons and solutions for this?
Thanks in Advance,
Sandhyahi i hecked the job log entries in SM37 in source system, the idocs were returned with '0' records. i took the Idoc number and checked in BD87 it displays some logs in that one node shows the red status with the detail as follow IDoc entries in tRFC queue 3383
the next one is green Data passed to port OK 1
i selected the red staus node and clicked 'process' button but it displays as
The operation cannot be carried out with this node type
wht should i do now, wht may be the reason for the datasource not pulling the data from R/3 to BI? -
How to change field values AFTER Inbound IDOC Posted successfully
Hi SAP Experts,
In my project I receive the inbound IDOC PORDCR05 from PI and posted as an Purchase Order in ECC.
I create the Z process code and Z function module (which is a copy version of IDOC_INPUT_PORDCR) and complete all the necessary configuration steps. It works perfectly.
My problem is: I have to collect some inbound idocs (that satisfied some criteria) and change the value of field EKPO-TXJCD and EKKN-KOSTL of the PO AFTER it posted successfully (means the purchase order is created and save in database).
How can I do this? I've try to put the logic code in Z function module, but it does not work, since at that time, the Inbound IDOC is not updated to the database yet.
Aprreciate your advise.
Regards,
Elaine.Hi Elaine ,
as per your cretiria pick the idocs and take created PO# from status 53 & use the BAPI (BAPI_PO_CHANGE) to change the neccessary values in the PO. We can't reprocess those idocs again.
Reddy -
Chart does not update after table changes
Simple X-Y chart using a data series from a table. The chart will not update after changing the table, for example after applying a filter. The chart will update if you close and reopen the file or go to Select Data on the chart. I use named ranges
because you can't use table nomenclature directly in the chart series definition.Seems to update for me OK. You need to apply the entire unfiltered range to the chart before filtering. Did you do this or filter first and only apply the visible range?
If not the answer to you query then maybe I am not understanding the problem correctly so can you upload an example workbook?
Guidelines to post a workbook on OneDrive
Zip your workbooks. I prefer that you do not just save to OneDrive. (To Zip a file, in Windows Explorer Right click on the selected file and select Send to -> Compressed (zipped) folder.)
Go to this link. https://onedrive.live.com
Use the same login Id and Password that you use for this forum.
Select Upload in the blue bar across the top and browse to the zipped folder to be uploaded and select Open (or just double click). (Be patient and give it time to display the file after initially seeing the popup indicating it is done.)
Right click the file on OneDrive and select Share.
Do NOT fill in the form; "Select Get a Link" on the left side.
Click the button "Create a Link"
Click in the box where the link is created and it will highlight.
Copy the link and paste into your reply on this forum.
Regards, OssieMac -
Starting new database LUW inside ABAP during IDoc posting
Hi all,
During posting of an inbound IDoc, I am trying to update my Z-table in user-exit. I want to do it regardless of the result of IDoc posting. The problem is: if IDoc posted successfully - table is updated because COMMIT WORK is called at the end of the posting, however, if IDoc not posted - ROLLBACK WORK is called and table is not updated. So, my aim now is to commit the update of Z-table in any case, but it is the only thing that should be committed - no other prior update FMu2019s should be committed.
I'm aware about the following thread
http://forums.sdn.sap.com/thread.jspa?threadID=1884700
Author of this thread says that he solved a problem by means of RFC and STARTING NEW TASK. But ABAP help says
that starting asynchronous RFC triggers immediately a database commit in the calling program (which is unacceptable because all prior update FMu2019s will be committed ). I've checked and it is really the case.
From my point of view SET UPDATE TASK LOCAL with COMMIT WORK should work in such kind of tasks, but in case of IDoc processing the whole process runs in a local update (see SET UPDATE TASK LOCAL in FM 'IDOC_INPUT'), so writing once again SET UPDATE TASK LOCAL has no effect.
I tested SUBMIT statement as well. It had no effect and then I found out from ABAP help that SUBMIT ... AND RETURN starts new SAP LUW, but NOT a DB LUW. That is if I update my Z-table in the program called by SUBMIT - all ROLLBACK statements still affect my Z-table update.
Is there any simple solution? Please suggest.
Thanks in advance!Hello,
Try SUBMIT VIA JOB.....
Sample Code
call function 'JOB_OPEN'
exporting
jobname = name
importing
jobcount = number
exceptions
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
others = 4.
if sy-subrc = 0.
submit z_idoc_create_process_order and return
via job name number number
with p_aufnr = it_header1-aufnr
with p_werks = it_header1-werks
with p_autyp = c_autyp
with p_auart = it_header1-auart
with p_dispo = it_header1-dispo
with p_opt = c_opt
with p_mestyp = c_mestyp.
if sy-subrc = 0.
call function 'JOB_CLOSE'
exporting
jobcount = number
jobname = name
strtimmed = 'X'
exceptions
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
others = 8.
if sy-subrc 0.
endif. -
I am developing a function module in ECC that will be used to post inbound IDOC for customer creation DEBMAS07
The logic is as follows -
The function receives an IDOC structure
It then invokes function module 'IDOC_INPUT_DEBITOR'
IDOC_INPUT_DEBITOR takes care of creating a new customer in table KNA1. But I was expecting IDOC_INPUT_DEBITOR to also handle the IDOC posting. This way I can go to WE02 and see a new IDOC record. What am I missing? Is there some more code I need to write after the function module call?
Thank you.
* IDOC structures for using ALE
data lc_no_display type bdwfap_par-inputmethd value ' '.
data lt_idoc_control type standard table of edidc.
data ls_idoc_control type edidc.
data lt_idoc_data type standard table of edidd.
data lt_idoc_data_knvi type standard table of edidd.
data lt_idoc_status type standard table of bdidocstat.
data ls_idoc_status type bdidocstat.
data lt_return_variables type standard table of bdwfretvar.
data lt_serialization_info type standard table of bdi_ser.
data lv_workflow_result type bdwf_param-result.
data pi_idoctyp type edi_iapi00-idoctyp.
data pt_segments type standard table of edi_iapi11.
data lw_segments type edi_iapi11.
data ls_idoc_data type edidd.
data ls_e1kna1m type zdebmas07_e1kna1m.
data e1kna1m type e1kna1m.
*** CONTROL DATA
ls_idoc_control-mandt = input-idoc-edi_dc40-mandt.
ls_idoc_control-status = input-idoc-edi_dc40-status.
ls_idoc_control-doctyp = input-idoc-edi_dc40-idoctyp.
ls_idoc_control-direct = input-idoc-edi_dc40-outmod.
ls_idoc_control-rcvprt = input-idoc-edi_dc40-rcvprt.
ls_idoc_control-rcvprn = input-idoc-edi_dc40-rcvprn.
ls_idoc_control-stdmes = input-idoc-edi_dc40-stdmes.
ls_idoc_control-outmod = input-idoc-edi_dc40-outmod.
ls_idoc_control-sndpor = input-idoc-edi_dc40-sndpor.
ls_idoc_control-sndprt = input-idoc-edi_dc40-sndprt.
ls_idoc_control-sndprn = input-idoc-edi_dc40-sndprn.
ls_idoc_control-mestyp = input-idoc-edi_dc40-mestyp.
ls_idoc_control-idoctp = input-idoc-edi_dc40-idoctyp.
append ls_idoc_control to lt_idoc_control.
*** READ SEGMENTS
pi_idoctyp = ls_idoc_control-idoctp.
call function 'IDOCTYPE_READ_COMPLETE'
exporting
pi_idoctyp = pi_idoctyp
tables
pt_segments = pt_segments
exceptions
object_unknown = 1
segment_unknown = 2
relation_not_found = 3
others = 4.
loop at pt_segments into lw_segments.
case lw_segments-segmenttyp.
when 'E1KNA1M'.
ls_idoc_data-segnam = 'E1KNA1M'.
ls_idoc_data-mandt = sy-mandt.
ls_idoc_data-segnum = lw_segments-nr.
ls_idoc_data-psgnum = lw_segments-parpno.
ls_e1kna1m = input-idoc-e1kna1m.
move-corresponding ls_e1kna1m to e1kna1m.
move e1kna1m to ls_idoc_data-sdata.
append ls_idoc_data to lt_idoc_data.
exit.
endcase.
endloop.
*** IDOC INPUT CALL FUNCTION
data: response type zsi_create_customer_is_res_tab.
data: response_lwa type zsi_create_customer_is_respons.
data: lwa_error_message type string.
call function 'IDOC_INPUT_DEBITOR'
exporting
input_method = lc_no_display
mass_processing = space
importing
workflow_result = lv_workflow_result
tables
idoc_contrl = lt_idoc_control
idoc_data = lt_idoc_data
idoc_status = lt_idoc_status
return_variables = lt_return_variables
serialization_info = lt_serialization_info
exceptions
wrong_function_called = 1
others = 2.Hello Megan,
Check with the function modules
EDI_DATA_INCOMING
IDOC_WRITE_AND_START_INBOUND
Program:
RBDAPP01
I guess this would answer your query.
Regards,
TP -
/SAPTRX/IDOC_INPUT_EVMSTA IDoc posting only works for single BAPI call
Although the settings and code imply that the function /SAPTRX/IDOC_INPUT_EVMSTA can handle multiple events in a single IDoc the fact is that the code does not have a refresh statement on the BAPI internal tables with the loop through the IDoc control record. This means that we end up posting multiple events for the the same event during Idoc posting.
Is SAP going to fix this situation? PS: The same applies with the EHPOST Idoc function module.
Thank you
KevinDear,
I just debugged my Z-function, after adding all input parameters as in the standard BAPI function.
All parameters seems to be passed correctly except from the table parameters from
CLASS_OBJECTS
So all I_parameters are passed :
{ZBAPI_CLASS_GET_CLASSIFICATION.I_LANGU_INT} = "EN" and
{ZBAPI_CLASS_GET_CLASSIFICATION.I_LANGU_ISO} = "EN" and
{ZBAPI_CLASS_GET_CLASSIFICATION.I_KEY_DATE} = Date (2011, 08, 05) and
{ZBAPI_CLASS_GET_CLASSIFICATION.I_CLASSNUM} = "DSWTEST" and
{ZBAPI_CLASS_GET_CLASSIFICATION.I_CLASSTYPE} = "001" and
{ZBAPI_CLASS_GET_CLASSIFICATION.I_CHARACTS_OF_CLASS_ONLY.BAPIFLAG} = ""
but the table parameters aren't coming through:
{ZBAPI_CLASS_GET_CLASSIFICATION.T_CLASS_OBJECTS.OBJECT_TYPE} = "MARA" and
{ZBAPI_CLASS_GET_CLASSIFICATION.T_CLASS_OBJECTS.OBJECT_KEY} = "000000000000000085" and
these are 'blanco' in the function.
also after the function is executed and all data is retrieved, when passing the data back to Crystal reports, once again, the table result isn't passed to Crystal Reports.
please advise -
BCALV_EDIT_03 - Need the table update function
I am fairly new to OO programming and have worked through the various sample programs. I am currently using BCALV_EDIT_03 and _04 to write a table maintenance program.
I kind of have figured out how the delete and insert function works but unfortunately in sample program _03 the final table update function is missing.
What I am after is that I get all the changed records from the grid and update the external table just with those records.
Could somebody post some sample update code that I could check out?
Thanks in advance.
GerdTable update as in, database table update or ALV table update ?
ALV Table update will be done automatically, in case you have used the method : set_table_for_first_display
As you also quote that you are checking out BCALV_<b>EDIT</b>_03, I will just clarify this point, all changes made to the table are triggered by the EVENT DATA_CHANGED and this event has the necessary fields, from which you can come to know which rows and what values have changed. You need to use this DATA_CHANGED event and update your internal table. This is then shown in SET_TABLE_FOR_FIRST_DISPLAY in PBO.
In case you are talking about database update and if it is a custom table, then you have to use the direct update.
In case it is a SAP table, you might let us know which table it is, and probably some of the experts here can let you know the Function Module, BAPI or any method of a class to use.
In case you need a good tutorial help, you can find it in Serdar Simsekler's
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/an easy reference for alv grid control.pdf
Let me know if I am way tangent here or I could be of help to you.
Regards,
Subramanian V. -
IDOC POsting Error: Transition no. OBJ_SYS is blocked by another user
Hi Experts,
I m sending the XML from a third party system into SAP using XI as middleware for IDOC posting (FB01).
I m getting an error <b>Transition no. <xx> is blocked by another user</b> while sending intercompany and cash applications. SAP is unable to process such XML directly.
But if i login to SAP and mannually post the IDOC, it is getting posted successfully.
Any idea what may be the cause?
Useful answers will be rewarded for sure.
Regards
DhanyaR NairHi Dhanya,
In your inbound idoc processing program, pls do use the lock mechanism for the FI document which you are processing and if it cannot be locked then keep it on wait for sometime and check for the same.
If its a standard program check whether it can be done in XI.
When SAP is locking the transaction it will be unlocked after the commit work and hence its happening.
The reason why you may not be getting this in individual processing is that you are doing the same thru a single session. And the lock if am not wrong is happening in table level and not in record level.
Cheers
JK -
To Update the IDOC segment values through report program
My requirement is to update the Idoc segment through the report program. Any SAP provided standard function module is available to update the Idoc segment values. Please help needed.
DATA: LT_EDIDD TYPE STANDARD TABLE OF EDIDD."Local Table to Hold EDIDD
LT_EDIDD = I_EDIDD. "table should have the data
*-- Opening the IDoc for Edit
CALL FUNCTION 'EDI_DOCUMENT_OPEN_FOR_EDIT'
EXPORTING
DOCUMENT_NUMBER = X_EDIDC-DOCNUM
TABLES
IDOC_DATA = IT_EDIDD
EXCEPTIONS
DOCUMENT_FOREIGN_LOCK = 1
DOCUMENT_NOT_EXIST = 2
DOCUMENT_NOT_OPEN = 3
STATUS_IS_UNABLE_FOR_CHANGING = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*-- Editing the IDoc
CALL FUNCTION 'EDI_CHANGE_DATA_SEGMENTS'
TABLES
IDOC_CHANGED_DATA_RANGE = LT_EDIDD
EXCEPTIONS
IDOC_NOT_OPEN = 1
DATA_RECORD_NOT_EXIST = 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.
*-- Closing the IDoc after Edit
CALL FUNCTION 'EDI_DOCUMENT_CLOSE_EDIT'
EXPORTING
DOCUMENT_NUMBER = X_EDIDC-DOCNUM
DO_COMMIT = 'X'
DO_UPDATE = 'X'
WRITE_ALL_STATUS = 'X'
EXCEPTIONS
IDOC_NOT_OPEN = 1
DB_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.
thanks
vijay -
How to tcack the table update event in sap for all tables by use of single
Hello,
I want to store the list of all OM,HR tables in a file which are updated after perticular date. For that i tried TRIGGER but i can write only one trigger for one table, i want such a that i have to write only one trigger which will be invoked affter update operation on every HR,OM tables and i store information in a file regarding which rows are updated and external application can use it.
Thanks in advance,
SANDIPhi all the log for the change of any thing will be available in the tables DBTABLOG..REPOSRC ....
regards,
venkat.
Maybe you are looking for
-
Newbie needing help with code numbers and if-else
I'm 100% new to any kind of programming and in my 4th week of an Intro to Java class. It's also an on-line class so my helpful resources are quite limited. I have spent close to 10 hours on my class project working out P-code and the java code itself
-
Dear MM expert, We have some PO that we can not close it by tick in "Delivery complete". Problem is: Purchase order still contains faulty items Item 100 "Delivery completed" indicator cannot be set for item 00100 *Quantity smaller than invoiced quant
-
Yesterday I dit a fresh clean up of my MBA. Following the instructions on this website and others. The reason for this is that I had a annoying problem which not disappeared afther the fresh installation The problem is that when I do a cold boot up o
-
Stock transport Order - how to populate Storage location LGOBE field?
For stock transport order (intra/Inter) , I would like to have the Storage location populated for the receiving plant(LGOBE). Can you please let me know the config necessary for the same? Thank you.
-
Would anyone know of the equivalent Portal 10.1.4 call for Step 4: Add PDF Link to Report Screen as stated in Rendering Oracle HTML DB Reports as PDFs Using Formatting Objects Processor -- http://www.oracle.com/technology/pub/notes/technote_htmldb_fo