SAP Calender - THOC and THOCS tables
Hi everybody,
I've a problem with holidays. I set in scal transaction haliday but system doesn't see my enterance as a holiday. Because system doesn't update thoc and thocs tables. For this reason when i look at holiday calender in scal i couldn't see holidays. But when i look at public holidays in scal transaciton i see my public holidays.
I want to add that when i look at public holidays part, i see that my public holidays "USED" field is not 'X'.it is space.. Is tihs problem and how can i make it 'X'?
Thank you very much for your help,
Ünal ER
I deleted holiday and add again so problem solved...
Similar Messages
-
Crystal Reports Based on SAP Function Module and Transperant Tables
Hi,
I need to develop reports based on SAP trasperant tables and to filter the records I require to use one of the function module in SAP.
I have created parameters in Crystal reports that are required for the function to execute and are included in the where clause of the query. This helped the fuction to get those parameters and execute it.
The thing is that the fuction works fine with one set of parameters and gives accurate results both in SAP and Crystal Reports.
But fails for other set of parameters.
It works fine when we directly execute function in SAP produces a record set. But, when we pass those parameters from Crystal Reports it fetches no data.
Can anybody tell me the exact procedure to use function module and transperent tables together in Crystal Reports ?
Thanks in Advance.
Niwas JoshiHi,
This is going to be hard to explain, however you need to recognize that the function has input and possibly output (export) parameters. Crystal Reports is able to work with these parameters. However it is up to you to figure out how these parameters are used effectively to give you the correct results when joining the function with other data sources such as transparent tables.
If you're using transparent tables and functions in a Crystal Report, then you need to link these objects in such a way so that a left outer join for example is using the function's output parameters to join to the transparent table equivalent fields. However if the table is the starting point then the joins from the table should join the Input parameters of your function.
you can set these joins in the Database menu | Database Expert | Links of Crystal Reports. -
SAP User Id and Passward table
Hello Friends,
Please Tell me in which table Sap User Id and Passward is saved.
Regards,
vandana.Thank u abhii. Given full points.
But one more question i have Developed Y System and in that system there is logon Screen which asked for user id and passward .
Now i want to save this passward in the in encrypted form. How can i do this .
Please Help me .
Regards,
vandana. -
SAP QUERY LOOPS AND INTERNAL TABLE
Hi All, I have a query which i have made. It runs from Table EKPO which has PO details and what I want to do is now via ABAP Code pull through the total of goods receipt for the PO and Line Item into a field. Sounds Easy enough..Problem now,
The table which contains the GR data is EKBE which agains a PO and Line Item can have many 101 movements and 102 movements so what I want is an ABAP Statent to basically sum up the total of 101 for the PO & LINE ITEMS and then minus this from the total of 102 for the PO & LINE ITEMS and post the result in to this new field I have created.
I am pretty decent with ABAP Code in Querys I.e Select statements etc but from what I can see i need to create an internal table and do a loop and collect statement but I keep on failing due to not enough knowledge. Please can some one help me with this and provide me with the code and explanation as i would like to understand,
POINTS WILL BE REWARDED
Thanks
Kind Regards
Adeel SarwarHi,
This is the full code i have entered but its not working. Any help would be appreciated. If you could rectify the code and internal tables that would be great.
Thanks
TABLES: EKBE.
DATA: PurO LIKE EKPO-EBELN,
POLI LIKE EKPO-EBELP.
*New Table and Vars defined
DATA: BEGIN OF IT_EKBE,
IT_EKBE LIKE EKBE,
END OF IT_EKBE.
DATA: BEGIN OF IT_SUM OCCURS 0,
EBELN TYPE EBELN,
EBELP TYPE EBELP,
DMBTR TYPE DMBTR,
MENGE TYPE MENGE,
END OF IT_SUM.
CLEAR: QTYD.
MOVE: EKPO-EBELN TO PurO,
EKPO-EBELP TO POLI.
SELECT * FROM EKBE INTO IT_EKBE
WHERE EBELN = PurO
AND EBELP = POLI
AND BEWTP = 'E'
LOOP AT IT_EKBE.
MOVE CORRESPOING IT_EKBE TO IT_SUM.
IF IT_EKBE-BWART = '102'.
IT_SUM-DMBTR = IT_SUM-DMBTR * -1.
IT_SUM-MENGE = IT_SUM-MENGE * -1.
ENIDF.
COLLECT IT_SUM.
CLEAR IT_SUM.
ENDLOOP.
ENDSELECT.
If sy-subrc = 0.
QTYD = IT_SUM.
ELSE.
QTYD = 0.
ENDIF. -
SAP QUERY using ASSHR and ASSOB tables
We currently have SAP query that reports on additional payments (Info type 0015). The user wants to report the cost center held on the cost assignment (Tables ASSOB and ASSHR).
The existing query uses infoset created using PNP logical database.
How do I add or join the ASSOB and ASSHR tables to Info type 0015 to report the cost center?
Thanks in advance
ShamshudinHi Sham
You may need to create custom fields in the infoset and create some code to pull out and display details from ASSHR and ASSOB corresponding to the ifnotype record. -
How to create and add table type to a DDIC Structure in sap 3.1H
How to create and add table type to a DDIC Structure in sap 3.1H
How to create and add table type to a DDIC Structure in sap 3.1H
-
Need of Cluster and Pool Table in SAP
Can anybody explain an importance of Cluster and Pool Table concept in SAP.
Hi Hema,
Given link was Helping but still I have few things as part of concept of Cluster and Pool Tables.
(1) As cluster and Pool, both are logical table in SAP, it doesn't have physical existence in Database. Means, a single database table (Actual physical in database server ) may contain more than one pool and cluster tables' data. Likewise it decrease no of Tables at database server whereas the amount of data may remain same. So, my question is how does it benefit in respect of Memory space at database server or any other means.?
(2). As per one of the difference between Cluster and Pool table - Tables pools doesn't need to have foreign key relationship whereas in case of cluster table it it must to have foreign key relationship. Why is it so..?
Hope I have brought more clarity to my doubt.
Regards,
Chetan. -
Sy-tabix in relation to LOOP AT and READ TABLE
Hi All,
As per SAP documentation,
1) While looping through an internal table (LOOP AT), sy-tabix contains the index number of current row(for standard and sorted tables)
2)When successfully reading from an internal table(READ TABLE), sy-tabix is set to the index of the result row.
But what happens when READ TABLE is used while looping through another internal table?
i.e. Loop at TAB1...
write sy-tabix.
READ TABLE TAB2...
write sy-tabix.
endloop.
If we are looping through 1st row of TAB1 and the result of read statement is found in 3rd row of TAB2, I expected that sy-tabix before READ would be 1 and after the READ be 3.
But, I found that sy-tabix remains unchanged at 1. Can someone expalin why?
Thanks,
JaganHi
If after reading the table TAB2 the system variable SY-TABIX has still the previous value, that menas the READ TABLE fails or it was read the first record of TAB2.
After READ TABLE TAB2 try to check the SY-SUBRC:
LOOP AT TAB1.
WRITE: / 'TAB1 index:', SY-TABIX.
READ TABLE TAB2 .........
IF SY-SUBRC = 0.
WRITE: 'TAB2 index:', SY-TABIX.
Try this:
DATA: BEGIN OF ITAB OCCURS 0,
FIELD1,
END OF ITAB.
DATA: BEGIN OF ITAB2 OCCURS 0,
FIELD1,
END OF ITAB2.
DATA: INDEX TYPE I.
DO 10 TIMES.
APPEND ITAB.
ENDDO.
DO 10 TIMES.
APPEND ITAB2.
ENDDO.
LOOP AT ITAB.
WRITE: / 'ITAB:', SY-TABIX.
INDEX = SY-TABIX + 2.
READ TABLE ITAB2 INDEX INDEX.
IF SY-SUBRC = 0.
WRITE: 'ITAB2:', SY-TABIX.
ENDIF.
ENDLOOP.
Max -
To upload a RTF and a PDF file to SAP R/3 and print the same through SAP
Hi,
I have a requirement to upload a PDF file and a RTF file to SAP R/3 and print the same.
I wrote the following code for uploading a RTF file to SAP R/3 and print the same. However, the problem is , the formatting present in the RTF document( bold/italics..etc) is not being reflected when I do the 'print-preview' after the executing the code below :
report z_test_upload .
data: begin of itab occurs 0,
rec type string,
end of itab.
data: options like itcpo.
data: filename type string,
count type i.
data: filetype(10) type c value 'ASC'.
DATA: HEADER LIKE THEAD OCCURS 0 WITH HEADER LINE.
DATA: NEWHEADER LIKE THEAD OCCURS 0 WITH HEADER LINE.
DATA: ITFLINE LIKE TLINE OCCURS 0 WITH HEADER LINE.
DATA: RTFLINE LIKE HELP_STFA OCCURS 0 WITH HEADER LINE.
DATA: string_len TYPE i,
n1 TYPE i.
selection-screen begin of block b1.
parameter: p_file1(128) default 'C:\test_itf.rtf'.
selection-screen end of block b1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file1.
CALL FUNCTION 'F4_FILENAME'
IMPORTING
file_name = p_file1.
start-of-selection.
move p_file1 to filename.
call function 'GUI_UPLOAD'
EXPORTING
filename = filename
filetype = filetype
TABLES
data_tab = itab
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
others = 17.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
loop at itab.
string_len = strlen( itab-rec ).
n1 = string_len DIV 134.
ADD 1 TO n1.
DO n1 TIMES.
rtfline-line = itab-rec.
APPEND rtfline.
SHIFT itab-rec BY 134 PLACES.
ENDDO.
endloop.
HEADER-TDSTYLE = 'S_DOCUS1'.
HEADER-TDFORM = 'S_DOCU_SHOW'.
header-tdspras = 'E'.
CALL FUNCTION 'CONVERT_TEXT'
EXPORTING
CODEPAGE = '0000'
DIRECTION = 'IMPORT'
FORMAT_TYPE = 'RTF'
FORMATWIDTH = 72
HEADER = header
SSHEET = 'WINHELP.DOT'
WITH_TAB = 'X'
WORD_LANGU = SY-LANGU
TABLETYPE = 'ASC'
TAB_SUBSTITUTE = 'X09 '
LF_SUBSTITUTE = ' '
REPLACE_SYMBOLS = 'X'
REPLACE_SAPCHARS = 'X'
MASK_BRACKETS = 'X'
IMPORTING
NEWHEADER = NEWHEADER
WITH_TAB_E =
FORMATWIDTH_E =
TABLES
FOREIGN = RTFLINE
ITF_LINES = ITFLINE.
LINKS_TO_CONVERT =
if sy-subrc <> 0.
endif.
CALL FUNCTION 'PRINT_TEXT_ITF'
EXPORTING
HEADER = newheader
OPTIONS = options
IMPORTING
RESULT =
TABLES
LINES = itfline.
if sy-subrc <> 0.
endif.
Any hints or suggestions to solve this problem will be highly appreciated.
Thanks,
AvraHi Vishwas,
Check out the thread [Efficient way of saving documents uploaded|Re: Efficient way of saving documents uploaded by users; and check the blog by Raja Thangamani.
Also check the thread [Export Images through Function Modules |Export Images through Function Modules;.
Hope it helps you. -
SAP ECC6 memory and paging issues
Dear Experts
I have recently upgraded my 4.6C systems to an ECC 6 system (DB2 LUW 9.5 on AIX 5.3 TL9 64 Bit OS)
I have been running the LPAR with 14 GB of memory and we are around 100-200+ users using the system, I was monitoring using nmon and found that Physical Memory was around 99.8% Used (14311.8MB and 22.6MB was free) also the paging space was around 37.2% in result causing the system at times to run slow which can have a very negative effect on the users.
After further investigation I found that after a system restart the Physical Memory would start around 50.9% and increased at a steady pace until it reached 99.8% that is when the system would start using the paging space which would steadily increase, I found that the only solution was a system restart at least once a week to reduce the memory consumption.
At first glance it looked like a database manger memory leak with the process db2sysc, so I searched the net with the search words u201Cdb2 memory leaku201D and found the following APARs and notes.
APAR JR30285 - Pervasive memory leak when compiling SQL statements that use SQL/XML functions
APAR IZ35230 - There is a pervasive unix-specific private memory leak in the security component
Note 1288341 - Memory leak in APPLHEAPSZ -> SQL0954C
Note 1352361 - Memory leak in shared memory area abrfci
Note 1147821 - DB6: Known Errors and available Fixes in DB2 9.5 LUW
After reading the notes and APARs I decided to updated DB2 to the latest fix pack (5SAP), but after the fix pack was implemented it did not solve the memory problem
I started look at different problems with SAP ECC6, db2 and AIX with paging/memory problems and I found the following notes to do with AIX memory and paging but none of them helped as all parameters and settings were set accordingly
789477 - Large extended memory on AIX (64-bit) as of Kernel 6.20
191801 - AIX 64-bit with very large amount of Extended Memory
973227 - AIX Virtual Memory Management: Tuning Recommendations
884393 - AIX saposcol consumes large amount of memory.
856848 u2013 AIX Extended Memory Disclaiming
1048686 u2013 Recommended AIX settings for SAP
1121904 u2013 SAP on AIX: Recommendations for Paging
1086130 u2013 DB6: DB2 Standard Parameter Settings
After even more investigation I found the following evidence suggesting AIX Virtual Memory Manager might have a problemShared memories inside of pool 40
Key: 42 Size: 17792992 ( 17.0 MB) DB TTAB buffer
Key: 43 Size: 53606392 ( 51.1 MB) DB FTAB buffer
Key: 44 Size: 8550392 ( 8.2 MB) DB IREC buffer
Key: 45 Size: 7014392 ( 6.7 MB) DB short nametab buffer
Key: 46 Size: 20480 ( 0.0 MB) DB sync table
Key: 47 Size: 10241024 ( 9.8 MB) DB CUA buffer
Key: 48 Size: 300000 ( 0.3 MB) Number range buffer
Key: 49 Size: 2769392 ( 2.6 MB) Spool admin (SpoolWP+DiaWP)
Shared memories outside of pools
Key: 3 Size: 114048000 ( 108.8 MB) Disp. communication areas
Key: 4 Size: 523048 ( 0.5 MB) statistic area
Key: 6 Size: 692224000 ( 660.2 MB) ABAP program buffer
Key: 7 Size: 14838 ( 0.0 MB) Update task administration
Key: 8 Size: 134217828 ( 128.0 MB) Paging buffer
Key: 9 Size: 134217828 ( 128.0 MB) Roll buffer
Key: 18 Size: 1835108 ( 1.7 MB) Paging adminitration
Key: 19 Size: 119850000 ( 114.3 MB) Table-buffer
Key: 41 Size: 25010000 ( 23.9 MB) DB statistics buffer
Key: 63 Size: 409600 ( 0.4 MB) ICMAN shared memory
Key: 64 Size: 4202496 ( 4.0 MB) Online Text Repository Buf.
Key: 65 Size: 4202496 ( 4.0 MB) Export/Import Shared Memory
Key: 1002 Size: 400000 ( 0.4 MB) Performance monitoring V01.0
Key: 58900114 Size: 4096 ( 0.0 MB) SCSA area
Nr of operating system shared memory segments: 16
Shared memory resource requirements estimated
================================================================
Total Nr of shared segments required.....: 16
System-imposed number of shared memories.: 1000
Shared memory segment size required min..: 692224000 ( 660.2 MB)
System-imposed maximum segment size......: 35184372088832 (33554432.0 MB)
Swap space requirements estimated
================================================
Shared memory....................: 1654.8 MB
..in pool 10 328.6 MB, 58% used
..in pool 40 143.3 MB, 30% used
..not in pool: 1174.1 MB
Processes........................: 413.4 MB
Extended Memory .................: 6144.0 MB
Total, minimum requirement.......: 8212.2 MB
Process local heaps, worst case..: 3814.7 MB
Total, worst case requirement....: 21882.9 MB
Errors detected..................: 0
Warnings detected................: 3 -
Difference between YVBUK and XVBUK tables
Hello,
Can somebody explain me the user of Y* and X* tables for application tables such as VBUK, LIKP etc. in user exits?
According to note 415716 Y* tables store the condition of the record currently in the database and X* tables stores the changed value. But what happens if its a new record (UPDKZ = I), shouldnt Y* table be blank?
We have the following code in the user exit
INCLUDE YVUEPRZ1_DOC_SAVE_PREP_CARRIER *
perform update only if insert or update carrier
UPDKZ : Update indicator
DATA : ls_vbpa LIKE xvbpa.
LOOP AT xlikp.
v_index = sy-tabix.
CLEAR ls_vbpa.
READ TABLE xvbpa INTO ls_vbpa
WITH KEY vbeln = xlikp-vbeln
parvw = 'SP'.
CASE ls_vbpa-updkz.
WHEN 'I' OR 'U'.
MOVE-CORRESPONDING xlikp TO likp.
MOVE-CORRESPONDING xlikp TO likpd.
*-- Prepare changes of the delivery header
PERFORM likp_bearbeiten_vorbereiten(sapfv50k).
likp-yylfnr = ls_vbpa-lifnr.
*-- Check and confirm changes
PERFORM likp_bearbeiten(sapfv50k).
MOVE-CORRESPONDING likp TO xlikp.
MOVE-CORRESPONDING likpd TO xlikp.
MODIFY xlikp INDEX v_index.
IF t180-trtyp = 'V'. "Modification
xvbuk-uvk03 = 'D'.
xvbuk-updkz = 'U'.
MODIFY xvbuk TRANSPORTING uvk03 updkz WHERE vbeln = xlikp-vbeln.
ENDIF.
WHEN 'D'.
MOVE-CORRESPONDING xlikp TO likp.
MOVE-CORRESPONDING xlikp TO likpd.
*-- Prepare changes of the delivery header
PERFORM likp_bearbeiten_vorbereiten(sapfv50k).
CLEAR likp-yylfnr.
*-- Check and confirm changes
PERFORM likp_bearbeiten(sapfv50k).
MOVE-CORRESPONDING likp TO xlikp.
MOVE-CORRESPONDING likpd TO xlikp.
MODIFY xlikp INDEX v_index.
IF t180-trtyp = 'V'. "Modification
xvbuk-uvk03 = 'D'.
xvbuk-updkz = 'U'.
MODIFY xvbuk TRANSPORTING uvk03 updkz WHERE vbeln = xlikp-vbeln.
ENDIF.
ENDCASE.
ENDLOOP.
Now the problem is that SAP is saying that the table YVBUK also has to have the same record as XVBUK but I think its absurd for UPDKZ = I since there will be no database image for that.
thanksTo answer Peluka's question there are no entries in Y* table when UPDKZ = I or UPDKZ = U
and I dont quite understand what Ferry Lianto is saying but I think its pretty much the same as above
thanks for your help -
How to find the report for the SAP query (Query exists in table AQLQCAT)
Hello Experts,
I need to find the tables used in the SAP Query but i don't have access to transaction SQ01,SQ02 and SQ03 to check the same.
Therefore i checked table AQLQCAT and got the SAP Queries in the system. Then searched for the reports that would have been generated for the same passing AQusergroupquery name* in transaction SE38.
But unfortunately the program does not exists for the given paramenter.
Could you please let me know how to get the report name for the SAP Query.
Secondly please suggest any other way of checking the tables used in the SAP Query.
Also the table name from where i can download the SAP Queries.
Thanks in advance.
Regards,
Rahul SinhaI suggest you a simple method.
Execute the query. When the selection screen is showed, go to menu and click to SYSTEM->STATUS.
Check the program name and double click it to access the program code.
Search for tables or functions into the source code in order to understand where data are taken.
If you do not find anything , go to the program atttribute and check for logic database, sometimes they are used....
Best regards. -
BAPI FOR Deleting a Schedule Line Item from EKES and EKET tables
Dear All,
I would like to for deleting one of the line item from EKES (Po Confirmation ) and the respective line item from the EKET(PO Schedule Line Item Table).
Assume that am allowing the user to select the lineitem from zprogram screen and collecting the PO and Its LIne Item details in an internal table.
Can i Use
<b>BAPI_PO_Change</b> , if so , can anybody tell me the steps to follow to use this bapi for deleting the PO lineItems, since i m going to try BAPI for First time.
pls help me out
Message was edited by: Raja K.PHi raja ,
loop at iekko1.
w_index = sy-tabix.
item-po_item = itemx-po_item = iekko1-ebelp.
item-quantity = iekko1-mng01.
itemx-quantity = iekko1-mng01.
if iekko1-wamng = iekko1-wemng.
itemx-no_more_gr = item-no_more_gr = 'X'.
else.
itemx-no_more_gr = item-no_more_gr = ''.
endif.
append item.
append itemx.
clear return[].
call function 'BAPI_PO_CHANGE'
exporting
purchaseorder = iekko1-ebeln
tables
return = return
poitem = item
poitemx = itemx.
if return[] is initial.
commit work and wait.
call function 'DEQUEUE_ALL'.
search for deletion fields which u have to mark 'X'.
before calling this BAPi u have to lock the PO by using ENQUEUE.
<b>
FU BAPI_PO_CHANGE
Text
Change purchase order
Functionality
Function module BAPI_PO_CHANGE enables you to change purchase orders. The Change method uses the technology behind the online transaction ME22N.
Alternatively, the IDoc type PORDCH1 is available. The data from this IDoc populates the interface parameters of the function module BAPI_PO_CHANGE.
Functionality in Detail
Authorization
When you create (activity 02) an Enjoy purchase order, the following authorization objects are checked:
M_BEST_BSA (document type in PO)
M_BEST_EKG (purchasing group in PO)
M_BEST_EKO (purchasing organization in PO)
M_BEST_WRK (plant in PO)
Controlling adoption of field values via X bar
For most tables, you can use your own parameters in the associated X bar (e.g. PoItemX) to determine whether fields are to be set initial, values inserted via the interface, or default values adopted from Customizing or master records, etc. (for example, it is not mandatory to adopt the material group from an underlying requisition - you can change it with the BAPI).
Transfer
Purchase order number
The PurchaseOrder field uniquely identifies a purchase order. This field must be populated in order to carry out the Change method.
Header data
The header data of the Enjoy purchase order is transferred in table PoHeader.
Item data
The item data of the Enjoy purchase order is stored in the tables PoItem (general item data). Changes regarding quantity and delivery date are to be made in the table PoSchedule.
Use the table PoAccount to change the account assignment information.
Services and limits
Changes to existing items cannot be carried out with the Change method. It is only possible to create new items.
Conditions
Conditions are transferred in the table PoCond; header conditions in the table PoCondHeader. A new price determination process can be initiated via the parameter CALCTYPE in the table PoItem.
Vendor and delivery address
The vendor address in the table PoAddrVendor and the delivery address in the table PoAddrDelivery can only be replaced by another address number that already exists in the system (table ADRC). Changes to address details can only be made using the method BAPI_ADDRESSORG_CHANGE.
Partner roles
You can change all partners except the partner role "vendor" via the table PoPartner.
Export/import data
Export/import data can be specified per item in the table PoExpImpItem. Foreign trade data can only be transferred as default data for new items. Changes to the export/import data of existing items are not possible.
Texts
Header and item texts can be transferred in the tables PoTextHeader and PoTextItem. Texts for services are imported in the table PoServicesText. Texts can only be replaced completely.
Version Management
You can make use of the Version Management facility via the table AllVersions.
Return
If the PO was changed successfully, the header and item tables are populated with the information from the PO.
Return messages
Messages are returned in the parameter Return. This also contains information as to whether interface data has been wrongly or probably wrongly (heuristical interface check) populated. If a PO has been successfully created, the PO number is also placed in the return table with the appropriate message.
Restrictions
With this function module, it is not possible to:
Create subcontracting components (you can only use existing ones)
Create configurations (you can only use existing ones)
Change message records (table NAST) and additional message data (this data can only be determined via the message determination facility (Customizing))
Attach documents to the purchase order
Change foreign trade data
Change service data
Change or reexplode BOMs
A firewall prevents the manipulation of data that is not changeable in Purchasing according to the business logic of the purchase order (e.g. PO number, vendor, etc.).
PO items with an invoicing plan cannot be created or changed using the BAPIs
In this connection, please refer to current information in Note 197958.
To change addresses with numbers from Business Address Services (cantral address management), please use the function module BAPI_ADDRESSORG_CHANGE.
To change variant configurations, please use the function module BAPI_UI_CHANGE. More information is available in the BAPI Explorer under the Logistics General node.
In the case of changes that are to be made via the BAPI_PO_CHANGE, a firewall first checks whether the relevant fields are changeable. This approach follows that of the online transaction. Here it is not possible to change the vendor or the document type, for example.
Example
Example of changes made to a purchase order with:
1. Change in header data
2. Change in item
3. Change in delivery schedule
4. Change in account assignment
5. Change in conditions
6. Change in partners
Parameter: PURCHASEORDER 4500049596
Parameter: POHEADER
PMNTTRMS = 0002
PUR_GROUP = 002
Parameter: POHEADERX
PMNTTRMS = X
PUR_GROUP = X
Parameter: POITEM
PO_ITEM = 00001
CONF_CTRL = 0001
Parameter: POITEMX
PO_ITEM = 00001
PO_ITEMX = X
CONF_CTRL = X
Parameter: POSCHEDULE
PO_ITEM = 00001
SCHED_LINE = 0001
QUANTITY = 10.000
PO_ITEM = 00001
SCHED_LINE = 0003
DELETE_IND = X
Parameter: POSCHEDULEX
PO_ITEM = 00001
SCHED_LINE = 0001
PO_ITEMX = X
SCHED_LINEX = X
QUANTITY = X
PO_ITEM = 00001
SCHED_LINE = 0003
PO_ITEMX = X
SCHED_LINEX = X
DELETE_IND = X
Parameter: POACCOUNT
PO_ITEM = 00001
SERIAL_NO = 01
GL_ACCOUNT = 0000400020
Parameter: POACCOUNTX
PO_ITEM = 00001
SERIAL_NO = 01
PO_ITEMX = X
SERIAL_NOX = X
GL_ACCOUNT = X
Parameter: POCOND
ITM_NUMBER = 000001
COND_TYPE = RA02
COND_VALUE = 2.110000000
CURRENCY = %
CHANGE_ID = U
Parameter: POCONDX
ITM_NUMBER = 000001
COND_ST_NO = 001
ITM_NUMBERX = X
COND_ST_NOX = X
COND_TYPE = X
COND_VALUE = X
CURRENCY = X
CHANGE_ID = X
Parameter: POPARTNER
PARTNERDESC = GS
LANGU = EN
BUSPARTNO = 0000001000
Help in the Case of Problems
1. Note 197958 lists answers to frequently asked questions (FAQs). (Note 499626 contains answers to FAQs relating to External Services Management.)
2. If you have detected an error in the function of a BAPI, kindly create a reproducible example in the test data directory in the Function Builder (transaction code SE37). Note 375886 tells you how to do this.
3. If the problem persists, please create a Customer Problem Message for the componente MM-PUR-PO-BAPI, and document the reproducible example where necessary.
Customer Enhancements
The following user exits (function modules) are available for the BAPI BAPI_PO_CREATE1:
EXIT_SAPL2012_001 (at start of BAPI)
EXIT_SAPL2012_003 (at end of BAPI)
The following user exits (function modules) are available for the BAPI BAPI BAPI_PO_CHANGE:
EXIT_SAPL2012_002 (at start of BAPI)
EXIT_SAPL2012_004 (at end of BAPI)
These exits belong to the enhancement SAPL2012 (see also transaction codes SMOD and CMOD).
There is also the option of populating customer-specific fields for header, item, or account assignment data via the parameter EXTENSIONIN.
Further Information
1. Note 197958 contains up-to-date information on the purchase order BAPIs.
2. If you test the BAPIs BAPI_PO_CREATE1 or BAPI_PO_CHANGE in the Function Builder (transaction code SE37), no database updates will be carried out. If you need this function, please take a look at Note 420646.
3. The BAPI BAPI_PO_GETDETAIL serves to read the details of a purchase order. The BAPI cannot read all details (e.g. conditions). However, you can use the BAPI BAPI_PO_CHANGE for this purpose if only the document number is populated and the initiator has change authorizations for purchase orders.
4. Frequently used BAPIs for purchase orders are BAPI_PO_CREATE, BAPI_PO_CREATE1, BAPI_PO_CHANGE, BAPI_PO_GETDETAIL, BAPI_PO_GETITEMS, BAPI_PO_GETITEMSREL, and BAPI_PO_GETRELINFO.
5. For more information on purchase orders, refer to the SAP library (under MM Purchasing -> Purchase Orders) or the Help for the Enjoy Purchase Order, or choose the path Tools -> ABAP Workbench -> Overview -> BAPI Explorer from the SAP menu.
Parameters
PURCHASEORDER
POHEADER
POHEADERX
POADDRVENDOR
TESTRUN
MEMORY_UNCOMPLETE
MEMORY_COMPLETE
POEXPIMPHEADER
POEXPIMPHEADERX
VERSIONS
NO_MESSAGING
NO_MESSAGE_REQ
NO_AUTHORITY
NO_PRICE_FROM_PO
EXPHEADER
EXPPOEXPIMPHEADER
RETURN
POITEM
POITEMX
POADDRDELIVERY
POSCHEDULE
POSCHEDULEX
POACCOUNT
POACCOUNTPROFITSEGMENT
POACCOUNTX
POCONDHEADER
POCONDHEADERX
POCOND
POCONDX
POLIMITS
POCONTRACTLIMITS
POSERVICES
POSRVACCESSVALUES
POSERVICESTEXT
EXTENSIONIN
EXTENSIONOUT
POEXPIMPITEM
POEXPIMPITEMX
POTEXTHEADER
POTEXTITEM
ALLVERSIONS
POPARTNER
Exceptions
Function Group
2012
</b>
regards
prabhu
Message was edited by: Prabhu Peram -
How to update the VBFA table without entries in VBRK and VBRP tables
Hello,
I have a requirement , where the sales order , delivery happens in one SAP system say X system and billing document wil happens in other sap system say Y.
Now in this particular case , if the user want to know the billing document number in X system. what would be the solution.
Is there any possibility to update the VBFA table with invoice number of Y system (without updating the VBRK and VBRP tables).
User want to see the billing doc number from sales order in the form of document flow in X system
Thanks in advance
PradeepHii
Without updating VBRK/VBRP table and updating VBFA is not possible, So you have to play with work arround to create one Z TABLE, so whenever system Y will create billing document with the reference of System X data you have to update Ztable with Invoice number created in System Y, The primary key will be in Z TABLE is Delivery document number to track one to one with billing doc.
Thanks and Regards
Shambhu Sarkar -
Datasource for material reservation data from SAP R/3 (RESB & RKPF table)
Hi,
How can i take material reservation data stored in SAP R/3 RESB and RKPF table. I can create generic data source and full upload of data is possible but how to manage daily delta. None of these table having change date to extract daily changed record to BI. Please suggest.
Please inform if any business content data source available for Reservation data?
Regards,
ManishHi,
Many times we face such situation, that we need to create a generic data source and there is no field to define delta.
In such situations you can go for psuedo delta.
Ask the client that at any point of time till which date will the data be changed.
Eg. the client may say that at max we will change last three months data.
In that case everytime you can do a full update and load only data of last three months.
Instead of date you can consider any field as per your requirement.
Regards,
Mansi
Maybe you are looking for
-
Where can I get resolution?
I have been trying to resolve an issue since the end of July 2013. When I call customer service the answer I get varies from someone will call you back (which they don't) or am given incorrect information and then they won't stand by the incorrect in
-
Java dynpro - bind a table in the input parameters of an RFC
Hi , JAVA Webdynpro - I have to bind a table in the input parameters of an RFC. The code below is taking in the N num of rows but is repeating the last row N times and sending it to the RFC. Ztsgt_Pos_Name postionTab = new Ztsgt_Pos_Name();
-
Just bought and downloaded an app. Why is there is no icon?
I bought log me in in the app store and downloaded it but it did not appear as an icon. What do I do?
-
Find totals of a date range and sum
How do I find totals between a date range like from 0 up to 60 days from today, 61 to 90 days from today, 91-120 days, 120 and above. Please advise. Do I use a Add_Months function to convert to days?
-
Best MacBook Pro specs for using Final Cut 7
Hello Forum: I have a MacBook Pro from 2008 that I'm currently using to do video editing in FCP7 for my film projects. I want to upgrade to a new MacBook as Final Cut tells me quite frequently that I don't have enough graphic capabilities to render