Protection of Key SAP HR tables in SAP R/3 Upgrade
Hello,
We are upgrading SAP R/3 to ECC 6.0. We have SAP HR, that also needs to be upgraded. Based on this, I have 4 queries, seen below.
1- What are the Pre-reqs and protection of data related activities prior to doing the above upgrade?
2- What are the key tables (in SAP R/3 and SAP HR) to be protected prior to "OR" during a upgrade?
3- What are the key tables (in SAP BW) to be protected prior to "OR" during a upgrade?
4- What is the length of a typical upgrade? (Is there a tool to analyze the expected time duration?)
Thanks for help in advance
Hi Abdul
Please find answers to your questions below .
One should be very careful with the upgrades with HR or BW unlike normal upgrades. Though upgrade do not delete any data but some exceptional tables may be skipped by upgrade and which will not have any data after system is converted to target
1.
Befoe prepare
Check SAP_HR 46C SP level
during Prepare
Add ST-A/PI in upgarde as well so that error will not be in JOB_RDDNTPUR
include all support package of the SAP_HR comp in BIND _PATCH phase
Before upgarde phase :
Backup table T512W(wage types in HR )
Before downtime
backup ST03 data
2. Key table in HR upgrade is T512W
3. check the upgrade guide for BW
4. The best prractice for this kind of project is to have upgrade system (sandbox which is copy of development ) . Try to have similar hardware configuration as PRD
This system will give the timeline for entire upgrade
Upgrade depends on hardware ,database ,size of database ,no of support packs binded in
So matra is " Read Read and Read "
Success !!
Ganesh
Similar Messages
-
Count rows on SAP BW table thru SAP BODS
Hi guys.
I have the next situation. I have two DataStores defined, one of them to SAP BW and the other one to SQL Server.
I need to know how many rows has a table before download on the SQL Server database.
I done a Dataflow with 2 objects only, SQL object and Template table. In the SQL editor i've defined the SAP BW Datastore and in the SQL text, i was put the sentence "Select count(1) from DS_SAPBW.."/BIC/AZTB_XXXXXX" ", but when i executed appear an error with "Invalid object" description.
I have tryed write the table name with diferent ways, but all of them generate the same error.
Can i use sql command direct over SAP BW or exists something restriction about that?.
Another way to count the rows is with a Dataflow with 3 objects, Source, Query and template table. In the Query i choose one port and use it to count() and write on the template table in SQL Server, but this solution take a lot of time when the source table is a large table, because try read all rows before give the result.
Can anybody help me?.
1st. situation.
Another thing, when save the Dataflow, disappears the Database type when re-entry into that SQL object again ¿¿¿???..
To execute appear the next error.
Help me please. I need to know how can i exceute this sql query in the correct way.
Thanks.Hi Wil,
it's right you'll have to synchronize the master data. When we implemented SEM-BCS 3.1 we had some problems with the reports so we used the following routine.
1. Upload attributes into SEM-BCS.
2. Put them into the hierarchies if needed.
3. Synchronize attributes to BW.
4. Do attribute change run in BW.
Synchronizing hierarchies was a bit painful so we decided to use different hierarchies (it helped at some other points too because we needed additional features in BW hierarchies like other InfoObjects).
Synchronizing BW attributes into SEM-BCS attributes was even worse because the standard BCS attributes could not be filled this way.
We worked on early SEM 3.1 as one of the ramp-up customers. The programs may have changed in the meantime but the one above has worked for us.
Best regards
Dirk -
The relationships and links between the various SAP database tables
Hi Gurus,
I am trying to learn the relationships and links between the various SAP database tables (SAP FI-AA, SAP SD, SAP MM, SAP HR and so on) for correctly extracting data from them. Especially I am expressing an interest in the SAP database tables on SAP FI-AA, SAP SD, SAP MM, SAP HR. Could somebody provide me with documentations about the relationships and links between them. I will be very grateful if somebody can provide me with links.
Thanks and regards
Sergeyhi Sergey,
try
http://www.erpgenie.com/abap/tables.htm
http://www.erpgenie.com/abap/tables_fi.htm
http://abap4.tripod.com/SAP_Tables.html
http://abap4.tripod.com/Finance_Tables.html
http://www.auditware.co.uk/SAP/Extras/SAPTables.pdf
hope this helps. -
How to find Primary Key for a particular SAP Databse Table?
Hi Guys,
How to find Primary Key and foreign key for Particular SAP Databse table ?for Ex : EKKO , EKPO , EKKN , EKBE , EKBEH , EKET and EKETH.
Thanks,
Srinivas.Use transaction SE11 to display the table. Put the cursor on the field you want to display the check table and click 'Foreign key' push button (a key with an bottom point arrow), then it will show the check table of the foreign of a field.
Or by just simple double click on the field, a pop-up window of all the attribute (including the foreign key and the check table if exists) will show too.
<i><b>Please reward point for helpful answer.</b></i>
Minami -
SAP PI Table which stores Dynamicconfiguration(filename) for file sender
Hello All,
What is the SAP PI table in which SOAP header elements are getting stored. In my scenario, i need to find out the message ID for a specific file name which is picked by file sender, as file name is stored under Dynamicconfiguration of SOAP header node...
Regards,
Sreenivas.Hi Sreenivas,
I am not sure if I have understood your requirement correctly but can't you achieve this using a UDF:
String headerField;
java.util.Map map;
AbstractTrace trace=container.getTrace();
map = container.getTransformationParameters();
String key = "MessageId";
headerField = (String) map.get(key);
return headerField;
Let us know.
Regards,
Shweta -
Convert XML to SAP internal table
Hi gurus,
My program is suppose to get current exchange rate file from website and upload it in SAP.
by using FM 'HTTP_GET', im getting the data in XML format.My problem is..i have tried to use transformation but failed to
map it against XML data element..and i have tried to use CALL FUNCTION 'SCMS_TEXT_TO_XSTRING' and then CALL FUNCTION 'SMUM_XML_PARSE' but it returns initial value with error ''line 0 col 12-unexpected symbol: '>'' .
Below is an excerpt of my XML file:
..<xml version>
..<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
.. xmlns:o="urn:schemas-microsoft-com:office:office"
.. xmlns:x="urn:schemas- microsoft-com:office:excel"
.. xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
.. <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"> <WindowHeight>10875</WindowHeight>........ <WindowWidth>13260</WindowWidth><WindowTopX>480</WindowTopX><WindowTopY>30</Wind
.. <Style ss:ID="Default" ss:Name="Normal">
.. <Alignment ss:Vertical="Bottom"/>
.. <Borders/>
.. <Font/>
.. <Interior/>
.. <NumberFormat/>
.. <Protection/>
.. </Style>
.. <Style ss:ID="BoldColumn">
.. <Font ss:FontName="Microsoft Sans Serif" x:Family="Swiss" ss:Bold="1"/>
.. <Worksheet ss:Name="Page1"><Table ss:StyleID="s21" > <Column ss:Width="130"/> <Column ss:Width="85"/> <Column .. ss:Width="85"/> <Column ss:Width="85"/> <Column ss:Widt
.. Cell><Cell ss:MergeAcross="1" ss:StyleID="BoldColumn"><Data ss:Type="String">Average Buying Rates</Data></Cell><Cell .. ss:MergeDown="1" ss:StyleID="BoldColumn"><Data ss:Type="Stri
.. ss:Type="Number">47.3732</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">47.5374</Data></Cell><Cell .. ss:StyleID="Decimal"><Data ss:Type="Number">48.2323</Data></Ce
.. " ><Data ss:Type="String">HONG KONG</Data></Cell><Cell ss:StyleID="StringLiteralCenter" ><Data .. .. ss:Type="String">HKD</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Numb
.. ss:Type="Number">22.8131</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">23.2595</Data></Cell>.. .. </Row><Row><Cell ss:StyleID="StringLiteral" ><Data ss:Type="String"
.. ss:StyleID="StringLiteralCenter" ><Data ss:Type="String">IDR</Data></Cell><Cell ss:StyleID="Decimal"><Data .. ss:Type="Number">3.0395</Data></Cell><Cell ss:StyleID="Decimal"><Data
.. ecimal"><Data ss:Type="Number">30.6424</Data></Cell></Row><Row><Cell ss:StyleID="StringLiteral" ><Data .. ss:Type="String">AUSTRALIA</Data></Cell><Cell ss:StyleID="StringLiteralCe
.. ell ss:StyleID="Decimal"><Data ss:Type="Number">0.3392</Data></Cell><Cell ss:StyleID="Decimal"><Data .. ss:Type="Number">0.3409</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Typ
.. StringLiteral" ><Data ss:Type="String">DENMARK</Data></Cell><Cell ss:StyleID="StringLiteralCenter" ><Data .. ss:Type="String">DKK</Data></Cell><Cell ss:StyleID="Decimal"><Data ss
.. ata ss:Type="Number">4.4550</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">4.6073</Data></Cell>.. </Row><Row></Row><Row></Row><Row><Cell ss:MergeAcross="4" ss:Style
.. s of 23 November 2010</Data></Cell></Row><Row></Row><Row><Cell ss:MergeAcross="4" .. ss:StyleID="BoldColumn_Left" ><Data ss:Type="String">2. Foreign Exchange Rates (THOMSON REUTE
.. ><Data ss:Type="String">ZAR</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">4.2735</Data></Cell>.. <Cell ss:StyleID="Decimal"><Data ss:Type="Number">4.3125</Data></
.. ="Decimal"><Data ss:Type="Number">106.5459</Data></Cell><Cell ss:StyleID="Decimal"><Data .. ss:Type="Number">107.5164</Data></Cell></Row><Row><Cell ss:StyleID="StringLiteral" ><Da
.. a></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">4.6916</Data></Cell></Row><Row><Cell .. ss:StyleID="StringLiteral" ><Data ss:Type="String">BANGLADESH</Data></Cell><Cell
.. r">0.0074</Data></Cell></Row><Row><Cell ss:StyleID="StringLiteral" ><Data ss:Type="String">KENYA</Data></Cell><Cell .. ss:StyleID="StringLiteralCenter" ><Data ss:Type="String">KE
.. ><Cell ss:StyleID="StringLiteral" ><Data ss:Type="String">VIET NAM</Data></Cell><Cell ss:StyleID="StringLiteralCenter" >.. <Data ss:Type="String">VND</Data></Cell><Cell ss:StyleI
.. A</Data></Cell><Cell ss:StyleID="StringLiteralCenter" ><Data ss:Type="String">LKR</Data></Cell><Cell .. .. ss:StyleID="Decimal"><Data ss:Type="Number">0.2686</Data></Cell><Cell ss:St
.. String">OMR</Data></Cell><Cell ss:StyleID="Decimal"><Data ss:Type="Number">77.7094</Data></Cell><Cell
Please help me to translate my XML file into SAP format...i need it fixed urgently..
Edited by: Guest101 on Dec 28, 2010 12:11 PMIt has 2 part one is source code and another is the XML file
create an XML file with the data provided in the last 2.
then place it in a path mention the path in the below source.
1. Complete code for converting XML to internal table in SAP.
*& Report ZTST_PGM02
REPORT ZTST_PGM02.
Load iXML Lib.
type-pools: ixml.
class cl_ixml definition load.
data: G_IXML type ref to if_ixml.
data: STREAMFACTORY type ref to if_ixml_stream_factory.
data: ISTREAM type ref to if_ixml_istream.
data: DOCUMENT type ref to if_ixml_document.
data: PARSER type ref to if_ixml_parser.
data: LV_FILE_URL type rlgrap-filename.
You should provide the parameter for file name
LV_FILE_URL = 'D:\navps\input_xml.xml'.
types: begin of XML_LINE,
DATA(256) type x,
end of XML_LINE.
types: begin of TY_HEADER,
CUST_NAME(20) type c,
CARD_NO(20) type c,
TAX_AMOUNT(10) type c,
TOTAL_AMOUNT(10) type c,
end of TY_HEADER.
types: begin of TY_ITEM,
ITEM_NO(4) type n,
ITEM_ID(20) type c,
ITEM_TITLE(50) type c,
ITEM_QTY(10) type c,
ITEM_UPRICE(10) type c,
end of TY_ITEM.
data: GV_HEADER type TY_HEADER.
data: GT_ITEM type standard table of TY_ITEM with header line.
data: XML_TABLE type table of XML_LINE,
XML_TABLE_SIZE type i.
The next step is creating the main factory for the iXML library:
G_IXML = cl_ixml=>create( ).
Now Create Stream Factory
STREAMFACTORY = G_IXML->create_stream_factory( ).
upload a file from the client's workstation
call function 'WS_UPLOAD'
exporting
filename = LV_FILE_URL
filetype = 'BIN'
importing
filelength = XML_TABLE_SIZE
tables
data_tab = XML_TABLE
exceptions
others = 11.
wrap the table containing the file into a stream
ISTREAM = STREAMFACTORY->create_istream_itable( table = XML_TABLE
size = XML_TABLE_SIZE )
Get the file data as Stream
*istream = streamfactory->create_istream_uri( public_id = lv_file_url
system_id = lv_file_url ).
Create XML Document instance
DOCUMENT = G_IXML->create_document( ).
Create parser Object
PARSER = G_IXML->create_parser( stream_factory = STREAMFACTORY
ISTREAM = istream
DOCUMENT = document ).
Parse an XML document into a DOM tree
*parser->parse( ).
Parsing Error Processing
if PARSER->parse( ) ne 0.
if PARSER->num_errors( ) ne 0.
data: PARSEERROR type ref to if_ixml_parse_error,
STR type STRING,
I type i,
COUNT type I,
INDEX type i.
COUNT = PARSER->num_errors( ).
write: COUNT, ' parse errors have occured:'.
INDEX = 0.
while INDEX < COUNT.
PARSEERROR = PARSER->get_error( INDEX = index ).
I = PARSEERROR->get_line( ).
write: 'line: ', i.
I = PARSEERROR->get_column( ).
write: 'column: ', i.
STR = PARSEERROR->get_reason( ).
write: STR.
INDEX = index + 1.
endwhile.
endif.
endif.
Close the stream since it #s not needed anymore
call method ISTREAM->close( ).
clear ISTREAM.
Now try to make it look good
data : lv_size type sytabix,
lv_ret_code type sysubrc.
data: lo_xml_document type ref to cl_xml_document.
field-symbols: <fs_xml_data> type any table.
lo_xml_document = document.
call method lo_xml_document->get_as_table
importing
table = <fs_xml_data>
size = lv_size
retcode = lv_ret_code
*data: items type ref to if_ixml_node_collection.
*items = document->get_elements_by_tag_name( name = 'Item' ).
*data: iterator type ref to if_ixml_node_iterator,
node type ref to if_ixml_node.
*iterator = document->create_iterator( ).
*node = iterator->get_next( ).
*while not node is initial.
do something with the node
node = iterator->get_next( ).
*endwhile.
DATA : GV_NODE type ref to if_ixml_node.
DATA : GV_NODETEXT type STRING.
data: GV_FIRST_TIME.
GV_FIRST_TIME = 'X'.
GV_NODE = DOCUMENT.
GT_ITEM-item_no = 1.
perform GET_DATA tables GT_ITEM
using GV_NODE
changing GV_HEADER.
Last item is still not added.
append GT_ITEM.
write : GV_HEADER-cust_name,
GV_HEADER-card_no,
GV_HEADER-tax_amount,
GV_HEADER-total_amount.
loop at GT_ITEM.
write /:.
write : GT_ITEM-item_no,
GT_ITEM-item_id,
GT_ITEM-item_title,
GT_ITEM-item_qty,
GT_ITEM-item_uprice.
endloop.
FORM Get_data *
form get_data tables YT_ITEM structure GT_ITEM
using value(x_node) type ref to if_ixml_node
changing Y_HEADER type TY_HEADER.
data: INDENT type i.
data: PTEXT type ref to if_ixml_text.
data: STRING type string.
data: TEMP_STRING(100).
case X_NODE->get_type( ).
when if_ixml_node=>co_node_element.
STRING = X_NODE->get_name( ).
GV_NODETEXT = STRING.
when if_ixml_node=>co_node_text.
PTEXT ?= X_NODE->query_interface( IXML_IID_TEXT ).
if PTEXT->ws_only( ) is initial.
STRING = X_NODE->get_value( ).
case GV_NODETEXT.
when 'Customer'.
clear GV_HEADER.
when 'Name'.
move STRING to GV_HEADER-cust_name.
when 'Cardnum'.
move STRING to GV_HEADER-card_no.
when 'Tax'.
move STRING to GV_HEADER-tax_amount.
when 'Total'.
move STRING to GV_HEADER-total_amount.
Iteam details
when 'ID'.
move STRING to GT_ITEM-item_id.
when 'Title'.
move STRING to TEMP_STRING.
move TEMP_STRING to GT_ITEM-item_title.
when 'Quantity'.
move STRING to GT_ITEM-item_qty.
when 'UnitPrice'.
move STRING to GT_ITEM-item_uprice.
endcase.
endif.
endcase.
if GV_NODETEXT = 'Customer'.
clear GV_HEADER.
elseif GV_NODETEXT = 'Item'.
if GV_FIRST_TIME ne 'X'.
append GT_ITEM.
clear : gt_item.
GT_ITEM-item_no = gt_item-item_no + 1.
endif.
GV_FIRST_TIME = ' '.
endif.
Get the next child
X_NODE = x_node->get_first_child( ).
Recurse
while not X_NODE is initial.
perform GET_DATA tables GT_ITEM
using X_NODE
changing GV_HEADER.
X_NODE = x_node->get_next( ).
endwhile.
endform.
Create an XML file with the following DATA given below and place it in the path mentioned above source code.
2. XML File DATA. You create an XML File in this format to test the same.
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
- <Order>
- <Customer>
<Name>Bill Buckram</Name>
<Cardnum>234 234 234 234</Cardnum>
</Customer>
- <Manifest>
- <Item>
<ID>209</ID>
<Title>Duke: A Biography of the Java Evangelist</Title>
<Quantity>1</Quantity>
<UnitPrice>$10.75</UnitPrice>
</Item>
- <Item>
<ID>208</ID>
<Title>100% Pure: Making Cross Platform Deployment a Reality</Title>
<Quantity>1</Quantity>
<UnitPrice>$10.75</UnitPrice>
</Item>
- <Item>
<ID>204</ID>
<Title>Making the Transition from C++ to the Java(tm) Language</Title>
<Quantity>1</Quantity>
<UnitPrice>$10.75</UnitPrice>
</Item>
- <Item>
<ID>202</ID>
<Title>Web Servers for Fun and Profit</Title>
<Quantity>1</Quantity>
<UnitPrice>$10.75</UnitPrice>
</Item>
- <Item>
<ID>210</ID>
<Title>I Think Not: Dukes Likeness to the Federation Insignia</Title>
<Quantity>1</Quantity>
<UnitPrice>$10.75</UnitPrice>
</Item>
</Manifest>
- <Receipt>
<Subtotal>$53.75</Subtotal>
<Tax>$4.43</Tax>
<Total>$58.18</Total>
</Receipt>
</Order> -
Why we use Cluster Tables in SAP Hr
hai friends, i am new to ABAP-HR and SAP HR, Actually i am core abaper ( working on SD, MM and Fi Modules ) , can any one explain me why and what is the use of Cluster tables in SAP HR, why we use in SAP HR function Module ?
Thnx in advance
VijayaHi Vijaya,
This may help for ur question..
Why cluster table:
Cluster tables combine the data from several tables with identical (or almost identical) keys into one physical record on the database.
Data is written to a database in compressed form.
Retrieval of data is very fast if the primary key is known.
Cluster tables are defined in the data dictionary as transparent tables.
External programs can NOT interpret the data in a cluster table.
Special language elements EXPORT TO DATABASE, IMPORT TO DATABASE and DELETE FROM DATABASE are used to process data in the cluster tables.
PCL1 - Database for HR work area; (long text, etc)
PCL2 - Accounting Results (time, travel expense and payroll); (payroll results)
PCL3 - Applicant tracking data;
PCL4 - Documents, Payroll year-end Tax data (change logs, etc) -
What are the methods to modify SAP standard tables?
hi
what are the methods to modify SAP standard tables?.APPEND structures AND CUSTOMIZING INCLUDES.
these are the two methods.. but customizing includes we, as a developers do not use.
generally we use .APPEND structures to modify standard tables.
note that we need an access key to modify atandard tables.
we can create an apend structure and add that structure to the standard table at the end.
note that .append structures should only be added only at the end.
that is the reason we use .append structures to modify standard tables.as we should not include a field in the middle and disturb the original order of the standard table fields as it may effect many objects depending on the standard table.
but Some standard tables for which there is a LONG datatype field can never be modified.
the reason is the LONG datatype field should always be there at the end and also .APPEND strutures should always be there at the end. there will be a conflict. so, some standard tables can not be appended. -
Hi all,
what are the cluster tables in SAP.
and shall we use inner join statment on cluster tables.
regards,
SureshHI,
<b>CLUSTER Tables :-</b>Table clusters (clusters) are special table types in the ABAP Dictionary
The data from several tables is stored together in a table pool or table cluster. Tables assigned to a table pool or table cluster are referred to as pooled tables or cluster tables.
Table pool or table cluster should be used exclusively for storing internal control information (screen sequences, program parameters, temporary data, continuous texts such as documentation). Data of commercial relevance is usually stored in transparent tables.
Can check this link for more clarity
http://help.sap.com/saphelp_47x200/helpdata/en/81/415d363640933fe10000009b38f839/frameset.htm
<b>We can't use inner join on clustor table.
To Join cluster table with other table its better use
several select statements.</b>
This one sample code to join cluster table with other transperant table.
In this bseg is a cluster table.
Check it out.
TABLES : bkpf,
bseg.
INTERNAL TABLE AND WORK AREA FOR THE FIELDS IN BKPF TABLE *
DATA : BEGIN OF itab_bkpf OCCURS 0,
bukrs LIKE bkpf-bukrs, "Company Code.
gjahr LIKE bkpf-gjahr, "Fiscal Year.
budat LIKE bkpf-budat, "Posting Date in the Document.
belnr LIKE bkpf-belnr, "Accounting document number.
blart LIKE bkpf-blart, "Document Type.
END OF itab_bkpf.
DATA : wa_bkpf LIKE LINE OF itab_bkpf.
INTERNAL TABLE AND WORK AREA FOR THE FIEDLS IN BSEG TABLE *
DATA : BEGIN OF itab_bseg_debit OCCURS 0,
bukrs LIKE bseg-bukrs, "Company Code.
gjahr LIKE bseg-gjahr, "Fiscal Year.
belnr LIKE bseg-belnr, "Accounting Document Number.
buzei LIKE bseg-buzei, "Line Item.
hkont LIKE bseg-hkont, "General Leadger Account.
shkzg LIKE bseg-shkzg, "Credit/Debit Indicator.
wrbtr LIKE bseg-wrbtr, "Amount in Document Currency.
pswsl LIKE bseg-pswsl, "Update Currency for Gen.Ledger
dmbtr LIKE bseg-dmbtr, "Amount in local currency.
sgtxt LIKE bseg-sgtxt, "Item Text.
zuonr LIKE bseg-zuonr, "Assignment Number.
END OF itab_bseg_debit.
DATA : itab_bseg_credit LIKE STANDARD TABLE OF itab_bseg_debit WITH
HEADER LINE.
FINAL OUTPUT INTERNAL TABLE *
DATA : BEGIN OF itab_output OCCURS 0,
belnr(08),
bukrs(04),
budat LIKE bkpf-budat,
buzei(03),
hkont(07),
blart(02),
shkzg(01),
wrbtr(08),
pswsl(05),
dmbtr(10),
sgtxt(19),
zuonr(10),
END OF itab_output.
CONSTANTS : c_debit TYPE c VALUE 'S',
c_credit TYPE c VALUE 'H'.
SELECT-OPTIONS *
SELECTION-SCREEN BEGIN OF BLOCK input WITH FRAME TITLE text-t01.
SELECT-OPTIONS : s_bukrs FOR bkpf-bukrs.
PARAMETERS : p_year LIKE bkpf-gjahr.
SELECT-OPTIONS : s_budat FOR bkpf-budat,
s_dbacct FOR bseg-hkont,
s_cracct FOR bseg-hkont,
s_amt FOR bseg-dmbtr.
SELECTION-SCREEN END OF BLOCK input.
SELECTING RECORDS FROM BKPF TABLE BASED ON THE CONDITION *
SELECT bukrs gjahr budat belnr blart
FROM bkpf INTO TABLE itab_bkpf
WHERE bukrs IN s_bukrs AND
gjahr EQ p_year AND
budat IN s_budat.
SELECTING DEBIT LINE ITEMITEMS FROM BSEG FOR THE DOCUMENT *
NUMBER SELECTED FROM BKPF *
IF NOT itab_bkpf[] IS INITIAL.
SELECT bukrs gjahr belnr buzei
hkont shkzg wrbtr pswsl
dmbtr sgtxt zuonr
FROM bseg INTO TABLE itab_bseg_debit
FOR ALL ENTRIES IN itab_bkpf
WHERE bukrs EQ itab_bkpf-bukrs AND
belnr EQ itab_bkpf-belnr AND
gjahr EQ itab_bkpf-gjahr AND
hkont IN s_dbacct AND
shkzg EQ c_debit AND
dmbtr IN s_amt.
SELECTING CREDIT LINE ITEMITEMS FROM BSEG FOR THE DOCUMENT *
NUMBER SELECTED FROM BKPF *
SELECT bukrs gjahr belnr buzei
hkont shkzg wrbtr pswsl
dmbtr sgtxt zuonr
FROM bseg INTO TABLE itab_bseg_credit
FOR ALL ENTRIES IN itab_bkpf
WHERE bukrs EQ itab_bkpf-bukrs AND
belnr EQ itab_bkpf-belnr AND
gjahr EQ itab_bkpf-gjahr AND
hkont IN s_cracct AND
shkzg EQ c_credit AND
dmbtr IN s_amt.
ENDIF.
SORT itab_bkpf BY bukrs gjahr belnr.
SORT itab_bseg_credit BY bukrs gjahr belnr.
LOOPING THE DEBIT ENTRIES
LOOP AT itab_bseg_debit.
READING THE CREDIT ENTRIES WHICH MATCHES WITH HE CURRENT DOC. NUMBER
READ TABLE itab_bseg_credit WITH KEY
bukrs = itab_bseg_debit-bukrs
gjahr = itab_bseg_debit-gjahr
belnr = itab_bseg_debit-belnr BINARY SEARCH.
IF sy-subrc EQ 0.
*READING THE POSTING DATE AND DOCUMENT TYPE FOR THE CURRENT DOUCMENT
AND APPENDING THE DEBIT AND CREDIT ENTRIES
READ TABLE itab_bkpf INTO wa_bkpf WITH KEY
bukrs = itab_bseg_debit-bukrs
gjahr = itab_bseg_debit-gjahr
belnr = itab_bseg_debit-belnr BINARY SEARCH.
itab_output-belnr = itab_bseg_debit-belnr.
itab_output-bukrs = itab_bseg_debit-bukrs.
itab_output-budat = wa_bkpf-budat.
itab_output-buzei = itab_bseg_debit-buzei.
itab_output-hkont = itab_bseg_debit-hkont.
itab_output-blart = wa_bkpf-blart.
itab_output-shkzg = itab_bseg_debit-shkzg.
itab_output-wrbtr = itab_bseg_debit-wrbtr.
itab_output-pswsl = itab_bseg_debit-pswsl.
itab_output-dmbtr = itab_bseg_debit-dmbtr.
itab_output-sgtxt = itab_bseg_debit-sgtxt.
itab_output-zuonr = itab_bseg_debit-zuonr.
APPEND itab_output.
itab_output-belnr = itab_bseg_credit-belnr.
itab_output-bukrs = itab_bseg_credit-bukrs.
itab_output-budat = wa_bkpf-budat.
itab_output-buzei = itab_bseg_credit-buzei.
itab_output-hkont = itab_bseg_credit-hkont.
itab_output-blart = wa_bkpf-blart.
itab_output-shkzg = itab_bseg_credit-shkzg.
itab_output-wrbtr = itab_bseg_credit-wrbtr.
itab_output-pswsl = itab_bseg_credit-pswsl.
itab_output-dmbtr = itab_bseg_credit-dmbtr.
itab_output-sgtxt = itab_bseg_credit-sgtxt.
itab_output-zuonr = itab_bseg_credit-zuonr.
APPEND itab_output.
ENDIF.
ENDLOOP.
Reward if it helps you.
Thanks. -
Hi experts,
I'm having trouble with creating PSA tables in SAP BW. Can somebody please explain the different ways to create PSA tables.
Thank You Very Much
My Regards...Hi..
After it is extracted from source systems, data is transferred to the entry layer the data
warehouse, the persistent staging area (PSA). In this layer, data is stored in the same form as
in the source system. The way in which data is transferred from here to the next layer</b>incorporates quality-assuring measures and the transformations and clean up required for a
uniform, integrated view of the data.
<b>When you activate the DataSource, BI generates a PSA table and a transfer program.</b>
The data in the DataSource (R3TR RSDS) is transferred to the PSA.
When you transport the restored 3.x DataSource into the target system, the DataSource
(R3TR RSDS) is deleted in the after image. The PSA and InfoPackages are retained. If a
transfer structure (R3TR ISTS) is transported with the restore process, the system tries to
transfer the PSA for this transfer structure. This is not possible if no transfer structure exists
when you restore the 3.x DataSource or if IDoc is specified as the transfer method for the 3.x
DataSource. The PSA is retained in the target system but is not assigned to a DataSource/3.x DataSource or to a transfer structure.
<b>The PSA table to which the data is written is created when the transfer structure is activated.</b>
<b>A transparent PSA table is created for every DataSource that is activated</b>.
The PSA tables each have the same structure as their respective DataSource. They are also flagged with key
fields for the request ID, the data package number, and the data record number.
InfoPackages load the data from the source into the PSA. The data from the PSA is processed with data transfer processes.
With the context menu entry Manage for a DataSource in the Data Warehousing Workbench
you can go to the PSA maintenance for data records of a request or delete request data from the PSA table of this DataSource. You can also go to the PSA maintenance from the monitor for requests of the load process.
Using partitioning, you can separate the dataset of a PSA table into several smaller, physically independent, and redundancy-free units. This separation can mean improved performance when you update data from the PSA.
In the Implementation Guide with SAP
NetWeaver → Business Intelligence → Connections to Other Systems → Maintain Control
Parameters for Data Transfer you define the number of data records needed to create a new
partition. Only data records from a complete request are stored in a partition. The specified value is a threshold value.
The number of fields is limited to a maximum of 255 when using TRFCs to transfer data. The length of the data record is limited to 1962 bytes when you use TRFCs.
<b>PSA Table
For PSA tables, you access the database storage parameter maintenance by choosing Goto → Technical Attributes in DataSource maintenance. In dataflow 3.x, you access this setting in transfer rule maintenance in the Extras menu.
You can also assign storage parameters for a PSA table already in the system. However, this has no effect on the existing table. If the system generates a new PSA version (a new PSA table) due to changes to the DataSource, this is created in the data area for the current storage parameters.</b>
<b>Define PSA Part. size using transaction RSCUSTV6
Minimum no. of records in a PSA partition
Use program SAP_PSA_PARTITION_COMPRESS for existing PSA
PSA
RSTSODS Directory of all PSA Tables</b>
with regards,
hari kv
Message was edited by:
hari k -
How to back up a table in SAP?Is there tcode to use?
How to back up a table in SAP?Is there tcode to use?
Please suggest me.
Sai.Hello Sai
I do not think there is a specific "backup" transaction available.
For the purpose of backing up a couple of customer tables I used the following approach:
(1) Create a workbench request with all required tables (object entries: R3TR TABU <name of table>; key: '' for client-independent or '<client>' for client-dependent tables.
Export the request.
(2) Write a report which creates a new workbench request and copies the object list of (1) to this new request. Finally the request is released.
(3) Schedule the report as daily batch job. Thus, your latest backup is less than 24 hours old.
The nice thing about this approach is that if you need to backup additional tables: just add the object entries and keys to the request in (1). No changes are required in (2) or (3).
Regards
Uwe -
SAP Forms : table cut short when too many entries
Hi all,
I have an issue with tables in sap forms. Normally the sap form printout is 1 page, but when many entries exist in a table, the table-list is cut short when the page ends. ie. it does not continue on a 2nd page.
What is missing here?
thanks for your help.
faBHi Fab,
what problem you are facing? you will have Page up, Page Down buttons in the toolbar.
or press key borad page up,page down buttons to navigate to next page.
Regards
vijay -
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. -
Drill down SAP history table on Linux
You may have noticed (or not noticed) that on some fields in SAP there is a History table that appears once you start entering (typing) information into the field.
The History table is a field box that appears underneath a field when you start entering information. An example of one of the fields is the Fund field.
This History table contains the last entries entered (by typing) into the field. Users have discovered that it allows a quick reference to regularly entered information.
This we i m observing on windows platform , but when i am using SAP on Linux fedora
same history table not creating.
Please help us to maintain history table in SAP on Linux fedora core 3 platform
Vijay Vadgaonkar
India
[email protected]Hi Vijay,
I assume you are talking about the history table for SAP GUI? If this is correct, please move your post to a forum like e.g. "ABAP Development". This here is dedicated to KMC in the SAP Enterprise Portal.
Regards,
Karsten -
Insert /delete data from SAP Z table to Oracle table and opposite
Hi,
Can u help me write this FM from the SAP side?
So, I have two tables ZTABLE in SAP and Oracle table ORAC.
Let's put three columns in each of them, for example
TEL1
TEL2
ADRESS
NAME
where TEL field is primary from ZTABLE to ORAC...
(in FM there shoud be abap code for writing data in ZTABLE after we press some pushbutton made in sap screen painter..)
for example, when we write new record in ZTABLE
00
112233
Street 4
Name1
this data shoud be inserted in Oracle table ORAC.
when we write new record in Oracle table for example
01
445566
New Street
Name2
this data shoud be inserted in ZTABLE.
Field TEL1 can be only of two values 01 or 02, other combination is not valid...
I must have all data from Oracle table ORAC in ZTABLE and opposite.
It should be the same scenario for DELETE...
And this communication should be online between sap and table in oracle database...
Can u help me from sap side? and give idea how to configure on oracle side??
Thanks a lot,
NihadI dont know if we can directly connect to a oracle database ( wait for the answers from others on this )
but in XI we have the JDBC adaptor to insert and retrieve data.
so for the outbound from SAP the flow can be something like this (with XI in landscape):
1) You have a screen to maintain a new entry / delete an entry
2) On save , this record gets saved or deleted from the Ztable in SAP
3)) In the same screen you can call a proxy class-method (generated using SPROXY transaction ) to send the record to XI.
4) XI to format it and insert into the oracle table
Mathews
Maybe you are looking for
-
How to get select items from multi select in an array or list in jsp
i have the following multi select which is basically an array coming from the database how can select couple of them and put them in an array in jsp and then save them in the session so when i click the next button they continue till i reach the last
-
Hi, I have building a program that will have one split screen and one of them has cl_column_tree_mode at top, and the other has cl_gui_alv_grid at bottom. I can Drag And Drop Lines From ALV GRID to TREE and i can use ONDRAG event of ALVGRID, DROP eve
-
How do you integrate LyrisHQ Opt-in form code in BC so that it works?
I created an opt-in form using the LyrisHQ platform and tested it in FF, IE and Chrome and it works. However, when I put the code on a page in BC it does not work and I do not get any error messages when I click on the submit button. Here is the code
-
Can I use my Iphone 5 at my GOLF VI
I have the problem that i cant use my iphone 5 at my car (GOLF VI) - i always have a media-in -> usb cable/adapter (VW - Orginal) - and try to take the iphone lightning -> usb adapter to connect. but i got a message on my radio: "Media-In: Device not
-
720c printer, wireless networking laptop/pc, win7
I have searched your support without success. PC running Win 7 32bit with 720c colour printer - works no problem. Laptop Win 7 64 bit has wireless link to PC for data & print. Brother laser on PC work fine from Laptop, Deskjet says "no driver". Suppo