Hierarchies transports
hi all,
1.how to transport heiarachies?(R/3 as well as Z hiearchies).
2. suppose i am creating 2 or more hierarchies oves a characterisitc, and i want to only transport only one hiearchy. so is it possible and how to do.
i have got few z hierachies over a std. info object(BWDEV). I have transported the object , the hiearchies are missing(BWQA).
so, i tried to change the hierarchies description in DEV and activated it, but i didnt get prompt for request.so, how to collect this hierarchy in a request.?
should i create it manually in all the boxes(quality and Prod)?
Hi,
I dont think it is possible to transport hierarchies from one system to other. You can download the hierachies created from the one system (Ex Development System) and then you can upload the same hierarchy to the other system say Quality.
For more details and procedure how to do it please find the below How To... document
How To... Download a Hierarchy to a Flat File
https://www.sdn.sap.com/irj/sdn/howtoguides?rid=/library/uuid/0403a990-0201-0010-38b3-e1fc442848cb
Hope this helps!
Regards,
Saurabh
Similar Messages
-
Can Hierarchies created in BW be Transported
Hi,
I have created some hierarchies in BW & i want to take it to quality system through TRANSPORT ,can we take this to quality system ?
Also in my Production i am already having hierachies with same technical name that i created in dev system now as it was missing only diff is that in DEV system those hierarchies have diff range of accounts clubed like
say in Prod for account 5150,5160 we are having ranges like 51500-51509 & 5160-51609
and here in DEV i have ranges for above two accounts like 51500-51609 (it is assumed that there are no account between this range)So can it create any issue if TR moves to PROD ?
please advice on this ?Hi,
Your transport with queries will not fail.
For hierarchy transport
1. Try transporting your hierarchy using Hier type under OTHERS(more types). I never tried this.
2. You can down load hierarchy in to flat file and upload in quality.
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/0403a990-0201-0010-38b3-e1fc442848cb
Thanks,
Kalyan. -
Transporting Hierarchies??
Hello Experts,
Is it possible to transport hierarchies from one BW system to another. I have to systems BW1 and BW2 i want to transport all my objects from BW1 to BW2 but I am having a problem with the hierarchy. The InfoObject is getting transported but not the hierarchy. Please do help me solve this issue.
Thanks in Advance!
SweathaSweatha,
Another way of moving hierarchies woould be :
1. create a flat file from the hierarchy. use Document <b>How to Download a Hierarchy to a Flat File</b> from SAP site to do that.
2. In the New Box, create a flat file source system and load the hierarchy .
Thanks
Tushar -
How to transport Hierarchies?
Hey BW gusy,
How to transport Hierarchies from BWD to
BWT and BWP?
ThanksClick Transport Connection' tab in the Admin Work.
go to the InfoObject and double click it, then press the transport icon, it will jump you the 'Transport Connection' tab where you can assign it to a transport.
Here is the transport process step by step:
se09 - biw
create tranport - workbench req. - skip project name - note transport number
rsa1 - transport connection - collect objects - select pc - find the pc - move from left to right
grouping - collect necessary objects - hit transport bus with no bex
comes with a request - match req. number generated in se09
se09 - display request - req is modifiable in tree - select request - release task - release parent as well - get screen with status
go to production system - stms - click bus - choose bp2 - opens all transports - shows my req - click import icon ONLY my request -
import done - ready message.
check in rsa1 in production
se09 - bw
create tranport - workbench req. - skip project name - note transport number
rsa1 - transport connection - collect objects - select pc - find the pc - move from left to right
grouping - collect necessary objects - hit transport bus with no bex
comes with a request - match req. number generated in se09
se09 - display request - req is modifiable in tree - select request - release task - release parent as well - get screen with
status
go to production system - stms - click bus - choose bp2 - opens all transports - shows my req - click import icon ONLY my request -
check in rsa1 in production -
Hi Friends,
This is my situation, we have several hierarchies that we wish to transport from Dev to QA and PRD environments. When we attempt to transport these hierarchies, only the key comes across, the texts do not. This is causing them trouble when we try to run queries and can only see the key rather than the description.
If some one has come accross this kind of issues. Please post your comments
I will definetely assign full points
Thanks
FarooqNot sure if you are the same one who posted the similar question - if not, I would suggest you search the forum before you post - saves time and effort for everyone.
Hirarchies -
Is there anyway to transport Heirarchies from Development to Test/Prd system??
We are on version 3.1C.
ThanksAnil
You could use this link to down load Hierarchy to a Flat File
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/0403a990-0201-0010-38b3-e1fc442848cb
http://help.sap.com/saphelp_nw04/helpdata/en/fa/e92637c2cbf357e10000009b38f936/content.htm
Hope this helps
Thnaks
sat
Message was edited by: Sat -
Prerequisites to transportation Hierarchie Info sources
Hi all,
Are there any prerequisites to take before we transport Hierarchy Infosources (PCFILE, not R/3).
Plz let me know,
Thanks in advance,
BRBHi
You should have an error message in the log of the transport that gives more information. Check the following:
1. is the source system definition (in your case the flatfile) active in the target
2. have you collected all necessary objects in the bw transport connection
3. is the name of the source system (the flatfile) in both bw systems the same? if not you have to maintain the translation of the source-systemname after the transport
Maybe you find the bug this way.
Kind regards
Hansjörg -
Unable to capture the Data Source into a Transport Request
Hi All,
We have a product hierarchy and we are using the data source :4R_PRODH_D_LGEN_HIER for the hierarchy.
Now we need to transport this structure to the quality environment but we were not able to capture the datasource:4R_PRODH_D_LGEN_HIER into a transport request.
When ever we activate the data source:4R_PRODH_D_LGEN_HIER it is asking for the Package and the Transport Request Number.If we give these details and save it, data source is not getting captured in the request, only the "bject Directory Entry" is getting captured.
Can someone please guide me on how to capture the datasource under "Data Sources in BW" in a transport request.
Regards,
Sachin Dehey.Hi Sachin,
Hierarachy datasource is not captured as Attributes and Text Datasource. So what ever you have done is correct.
What ever is captured in Object Directory Entry is correct. So go ahead with your transports, once transport is done check the Hierarchy Infopackage with Available OLTP hierarchies and load the data.
Most important thing first see that the all Master & Transactional Datasources are transported in R/3 Dev to QA to PRD
In BW, datasources are not transported, only their replica is transported.
Transportation of Datasource is done in R/3. Only their replica is transported in BW.
So wht ever you have done till now is correct. So go ahead.
While attaching Hierarchy Datasource it is captured only in "Object Directory Entry"
Regards,
Vishnu. -
Hi Experts,
I activated some of infoObjects in Developement System as a $TMP.Now I am Transporting DSO and InfoCube.I copied InfoCube and DSO from Standard content InfoCube and DSO.I didn't give the request/package while activating .Now I need to provide Package and request for Both of them And I am finding some of InfoObjects inside of the DSO are with $ sign.I collected DSO with the Grouping option of In DataFlow Before.
Do I need to assign request/Package for InfoObjects which are in DSO before assigning request/Package to the DSO.or If I assign the request/package for the DSO then $InfoObjects also go along with DSO with the Same request.I know I cannot transport any Object with $ sign(Loacal,Not for Transport).
I do have got some error messages while collecting objects through Transport Connector.Those
errors are as follows:
1.Object '45EX1L0TIWA4LUWZHUIKRNOCF' (ROUT) of type 'Routine' is not available in version 'A'
2.Object '46VPCRYNTSZ7BHM2MTI6WTD9X' (ROUT) of type 'Routine' is not available in version 'A'
3.Object '45EX3Q1RNVZ0DVY20BZPLCSU7' (ROUT) of type 'Routine' is not available in version 'A'
4.Object '46VPDZHN9VZSV7TNP6RRVY3CL' (ROUT) of type 'Routine' is not available in version 'A'
Note: DSO Loaded with data too.
Pleade guide me .Hope I explained my problem well .if not clear I will elaborate .
Thanks,
Suryam.Thanks both of you(Ashok and Sam)
Sam,
I copied the InfoCube and DSO from Standard Content InfoCube and DSO.I did added new routines to the ZinfoCube.
I need to make sure maintaining same Routines along with my routine as I have in Standard Data objects.Am I right.
Ashok:you gave me clear explanation.Thank you for that.Please look one more time at below I explained my issue and suggest me know anything I need to do more than you explained .
I did develop DSO,InfoCube and loaded in Dev system.I open the existing DSO then I click on the Truck icon i.e Transport connection via AWB.then I click on the grouping and selected In data flow before but collection mode is Automatically and Display Hierarchically.I got the above Routine errors. and I found the $ TMP sign for most of the InfoObjects in side.
It looks like the following if I expand DSO:
1.DSO----$ sign
2.InfoAREA--- $
3.DTP(R/3 DataSource also $ sign)---$
4.InfoObjects (if I expand this node some them assigned for package and some of them are with $ sign and I did one more mistake I assigned some of Objects to X Package and some of them to Y package.Please advise me how to put them in one Package.Hope I need to assign package for the $ sign infoObjects also along with the all)-----$
5.Tranformation(included Transformation,DSO,DataSource,InfoPackages,Formulas $ sign)---$ sign.
Please advise me.Thank you once again.
Thanks,
Suryam. -
BOBJ - BW "Error getting hierarchies for dimension... "
Im still whitout a solution for this problem, however we have found a difference between the queries that work and the queries that dont work. The difference is in the hierarchies type but we dont know what is the problem exactly.
Does anyone know if there is an specyfic type of hierarchie that we need to use???
RegardsHi,
I wonder why you are not using the BEx / BICS connection ? (instead of the old OLAP .unv)
the process flow for generating a universe would include the following SE37 function modules:
BAPI_MDPROVIDER_GET_CATALOGS
BAPI_MDPROVIDER_GET_CUBES
BAPI_MDPROVIDER_GET_DIMENSIONS
BAPI_MDPROVIDER_GET_HIERARCHYS
You should test these in BW .
It may actually be an authorization issue - perhaps your logon doesn't have infoobject authorizations for 0Plant?
Regards,
Henry
p.s. a quick Note search suggests : 1565615 - Error when creating a Universe from BEx: "A runtime exception has occurred. (Error getting levels for hierarchy ( dimension : Unknown error)"
--> "Business Objects Personalization objects" R21K900693 transport has not been loaded properly in the BW system, transaction STMS shows this trasport not loaded. -
Hierarchical Query with Rollup Sum (CONNECT BY with GROUP BY ROLLUP)
Hi all,
Imagine the following scenario: i have an ACCOUNT table which holds accounts and their hierarchy (currently 5 levels), and a BALANCE table which holds balance records for the accounts. Only CHILD accounts (level 5) have records in the BALANCE table. Simple example:
CREATE TABLE accounts (account_code VARCHAR2(30), parent_account VARCHAR2(30), account_desc VARCHAR2(400));
CREATE TABLE balances (account_code VARCHAR2(30), balance_amount NUMBER(18,2));
INSERT INTO ACCOUNTS VALUES ('TOT',NULL,'Total');
INSERT INTO ACCOUNTS VALUES ('ANA1','TOT','General Expenses');
INSERT INTO ACCOUNTS VALUES ('4801001','ANA1','Small Expenses');
INSERT INTO ACCOUNTS VALUES ('4801002','ANA1','Transportation');
INSERT INTO ACCOUNTS VALUES ('ANA2','TOT','Health Expenses');
INSERT INTO ACCOUNTS VALUES ('4802001','ANA2','Healthcare');
INSERT INTO ACCOUNTS VALUES ('4802002','ANA2','Facilities');
INSERT INTO BALANCES VALUES ('4801001', 2000);
INSERT INTO BALANCES VALUES ('4801002', 1000);
INSERT INTO BALANCES VALUES ('4802001', 3000);
INSERT INTO BALANCES VALUES ('4802002', 4000);What i need in this scenario is to run a hierarchical query, where for each node i compute the sum of all its children (In LEAF nodes which are the child accounts, this sum is the value in BALANCES itself). Final Result would be:
TOT -> 10000
ANA1 -> 3000
4801001 -> 2000
4801001 -> 1000
ANA2 -> 7000
4802001 -> 3000
4802002 -> 4000I have tried various ways, and found out a workaround which works for a fixed amount of levels, basically it builds the hierarchy and computes the SYS_CONNECT_BY_PATH, then splits this as a regular expression and uses GROUP BY ROLLUP to compute the higher levels. Then i assemble it again, now with the computed values. Below is the example query:
select level
, NVL (vfinal.child_account,'TOTAL') ||' - '||
( SELECT account_desc
FROM accounts
WHERE account_code = vfinal.child_acct ) account_name
, to_char(sum_bal, 'fm999g999g999g990') as rolled_up_balance
from
select coalesce( princ.lvl3, princ.lvl2, princ.lvl1 ) child_acct
, DECODE ( princ.lvl2 , NULL
, NULL
, DECODE ( princ.conta_lvl3, NULL
, princ.conta_lvl1,princ.conta_lvl2 ) ) parent_acct
, sum(princ.balance_amount) sum_bal
from (
select hier.lvl1
, hier.lvl2
, hier.lvl3
, hier.parent_account
, hier.account_code child_acc
, bal.balance_amount
from ( select level
, sys_connect_by_path( account_code, '/' ) hierarchy_acct
, REGEXP_SUBSTR(sys_connect_by_path( account_code, '/' ),'[^/]+',1,3) lvl3
, REGEXP_SUBSTR(sys_connect_by_path( account_code, '/' ),'[^/]+',1,2) lvl2
, REGEXP_SUBSTR(sys_connect_by_path( account_code, '/' ),'[^/]+',1,1) lvl1
, account_code
, parent_account
from accounts acc
where level <= 3
start with parent_account is null
connect by nocycle prior account = parent_account
order siblings by parent_account
) hier
, balances bal
where bal.cod_conta = hier.account_code
) princ
where princ.lvl1 is not null
group by rollup ( princ.lvl1
, princ.lvl2
, princ.lvl3 )
order by princ.conta_lvl1
, princ.conta_lvl2
, princ.conta_lvl3
) vfinal
where child_acct is not null
start with parent_acct is null
connect by nocycle prior child_acct = parent_acctAll said and done, what i need is to do the same thing for infinite levels, because this query has 3 fixed levels. Do you know how can i structure a new query where, independently of the number of levels, the parent sums are all rolled up like this?
Thanks a lot in advance! Best Regards!
Thiago
Edited by: Thiago on Sep 6, 2011 11:31 AM
Edited by: Thiago on Sep 6, 2011 1:01 PMHi,
Thiago wrote:
Hi all,
Imagine the following scenario: i have an ACCOUNT table which holds accounts and their hierarchy (currently 5 levels), and a BALANCE table which holds balance records for the accounts. Only CHILD accounts (level 5) have records in the BALANCE table. Simple example:
CREATE TABLE accounts (account_code VARCHAR2(30), parent_account VARCHAR2(30), account_desc VARCHAR2(400));
CREATE TABLE balances (account_code VARCHAR2(30), balance_amount NUMBER(18,2));
INSERT INTO ACCOUNTS ('TOT',NULL,'Total');
INSERT INTO ACCOUNTS ('ANA1','TOT','General Expenses');
INSERT INTO ACCOUNTS ('4801001','ANA1','Small Expenses');
INSERT INTO ACCOUNTS ('4801002','ANA1','Transportation');
INSERT INTO ACCOUNTS ('ANA2','TOT','Health Expenses');
INSERT INTO ACCOUNTS ('4802001','ANA2','Healthcare');
INSERT INTO ACCOUNTS ('4802002','ANA2','Facilities');
INSERT INTO BALANCES ('4801001', 2000);
INSERT INTO BALANCES ('4801001', 1000);
INSERT INTO BALANCES ('4802001', 3000);
INSERT INTO BALANCES ('4802001', 4000);
Thanks for posting the CREATE TABLE and INSERT statements. Remember why you do it: so that the people who want to help you can re-create the problem and test their ideas. If the statments don't work, then they are not so useful. None of the INSERT statements you posted work: they all need a VALUES keyword. Please test those statments before you post them.
Also, make sure that the reuslts you post correspond to the sample data you post. In your sample data, there are no rows in balances for account_codes '4801002' or '4802002'.
I think you want something like this:
WITH connect_by_results AS
SELECT CONNECT_BY_ROOT account_code AS root_account_code
, account_code
FROM accounts
-- NOTE: No START WITH clause
CONNECT BY parent_account = PRIOR account_code
SELECT c.root_account_code || ' -> '
|| TO_CHAR (SUM (b.balance_amount)) AS txt
FROM connect_by_results c
LEFT OUTER JOIN balances b ON c.account_code = b.account_code
GROUP BY c.root_account_code
; -
Dear Fellow LabVIEW programmers:
Most of the systems you deal with are reactive. It means that their
primary function is constant interaction with their environment by
sending and receiving events. But most likely, they can have something
happening inside them too, even when they are not processing messages
received from outside. So, such systems have to continuosly react to
external and internal stimuli. Right? Moreover, most likely, they
consist of subsystems that are reactive too and, in turn, can have
their own "life", to an extent independent from other parts (with
which they still communicate, of course). Reactive (event-driven)
systems are more naturally modeled with active objects. So, why then
should we try to model and code them with GOOP and its passive
("dead"!) objects?
"Flat" State Machines have been known for decades to have severe
limitations. It's been more than 20 years since Dr. Harel invented
Hierarchical State Machines (statecharts) to fight those limitations.
Then why does NI still tout the same old good Moore FSM as the
ultimate tool for event-driven programming in LabVIEW in its $995
State Diagram KIt?
The LabHSM toolkit we are happy to present, makes it possible to
easily create and then maintain complex event-driven applications in
LabVIEW as a collection of HSM-driven active object VIs using a higher
level of abstraction and agile software development methodologies.
These active object VIs are created based on a universal Hierarchical
State Machine ( HSM or statechart ) template. So. all your code looks
similar regardless of its functionality!
We all love just jump to code, right? However, to be good boys, we
need to do design first. Then implement it in code. If the logic is
modified we need to redo the design first and then redo the code. When
using LabHSM where behavior information is abstracted into a separate
HSM data file editable with a supplied editor, there is no need for
coding separate from design any more. The modified behavior becomes
code automatically as soon as the HSM file is saved. Design is code!
The implementation basically follows Dr. Samek's Quantum Programming
paradigm. (see http://www.quantum-leaps.com). However, as already
mentioned, LabHSM stores the behavior information in a file separate
from the code itself. It also adds state dependent priorities to
events, a separate queue for public events/messages, and, of course,
some LabVIEW specific code like capturing front panel user events and
putting them into the private Events queue. Communication and
instantiation functions are also rather specific for LabVIEW.
It is available for UNLIMITED PERIOD trial. Please visit
http://www.labhsm.com for details and download. The site also contains
references which you may want to check to learn more about
hierarchical state machines and active object computing.
Since this is our debut we will appreciate any comments and
suggestions. Our contact information is available on our site, of
course.
Have a G'day!Symtx is currently hiring the following position. Please contact me if interested.
Amy Cable
Symtx, HR
[email protected]
Symtx, the leading supplier of functional test equipment, hires the brightest & most talented engineering professionals to design & manufacture complex custom electronic systems for advanced technology leaders in the defense, aerospace, communications, medical, transportation & semiconductor industries. Symtx’ challenging & dynamic work environment seeks to fill openings with highly qualified electronic engineering design professionals.The ideal candidate will be responsible for defining the requirements, software design and code development, and integration of test control software for custom functional test systems. Candidate should be familiar with data acquisition concepts, instrument control, complex test, measurement and calibration algorithm development and definition and implementation of control interfaces to hardware. Prefer familiarity with instrument control via GPIB, VXI, MXI, RS-232 desirable. Requires BS/MSEE and 3 -7+ yrs of experience in one or several of the following test applications in a Windows NT/2000/XP environment using Labwindows CVI, TestStand, Labview, Visual Basic, C++ and knowledge of RF systems is a plus. Job responsibilities will include software design, development, integration, team leadership, and interfacing with customers( includes PDR’s & CDR’s). -
Infopackage hierarchy selection from OLTP is not saved when transported
I have created an infopackage in Development that is pulling an available hierarchy. I then transported Infopackage to QA, but the Hierarchy, although is available from OLTP, is not selected in InfoPackage. I created a copy of InfoPackage in the QA system and selected available hierarchy. It allows me to select hierarchy, save and execute. The issue I have is I need to transport the InfoPackage, created in DEV to all QA and Production systems. The InfoPackage is not retaining available hierarchy when being transported.
Hi,
Usually infopackage will not be transported but created in QA and production systems. If the infopackage is transported to QA, the pushbutton in infopackage Hierarchies in OLTP will bring the hiearachies available in the QA R/3 system. Appropiate hierachy can be selected and the same infopackage can be saved.
Regards,
Dinesh D -
hi experts,
can any body solve my programme
TABLES: LFA1,EKKO.
DATA: BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
ORT01 LIKE LFA1-ORT01,
LAND1 LIKE LFA1-LAND1,
REGIO LIKE LFA1-REGIO,
SORTL LIKE LFA1-SORTL,
END OF ITAB.
DATA: JTAB LIKE EKKO OCCURS 0 WITH HEADER LINE.
SELECT * FROM LFA1 INTO CORRESPONDING FIELDS OF TABLE ITAB UP TO 30 ROWS.
SELECT * FROM EKKO INTO TABLE JTAB UP TO 30 ROWS.
TYPE-POOLS: SLIS.
DATA: HEADER TYPE SLIS_T_LISTHEADER WITH HEADER LINE,
FLDCAT TYPE SLIS_T_FIELDCAT_ALV,
LAYOUT TYPE SLIS_LAYOUT_ALV,
KINFO TYPE SLIS_KEYINFO_ALV,
EVENT TYPE SLIS_T_EVENT WITH HEADER LINE.
LAYOUT-ZEBRA = 'X'.
LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
KINFO-HEADER01 = 'LIFNR'.
KINFO-ITEM01 = 'LIFNR'.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = EVENT[]
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
READ TABLE EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
EVENT-FORM = 'TOP_OF_PAGE'.
MODIFY EVENT TRANSPORTING FORM WHERE NAME = 'TOP_OF_PAGE'.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = SY-REPID
I_INTERNAL_TABNAME = 'ITAB'
* I_STRUCTURE_NAME = 'lfa1'
* I_CLIENT_NEVER_DISPLAY = 'X'
* I_INCLNAME = SY-REPID
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = FLDCAT
* EXCEPTIONS
* INCONSISTENT_INTERFACE = 1
* PROGRAM_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.
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
* I_INTERFACE_CHECK = ' '
I_CALLBACK_PROGRAM = SY-REPID
* I_CALLBACK_PF_STATUS_SET = ' '
* I_CALLBACK_USER_COMMAND = ' '
IS_LAYOUT = LAYOUT
IT_FIELDCAT = FLDCAT
* IT_EXCLUDING =
* IT_SPECIAL_GROUPS =
* IT_SORT =
* IT_FILTER =
* IS_SEL_HIDE =
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_DEFAULT = 'X'
* I_SAVE = ' '
* IS_VARIANT =
IT_EVENTS = EVENT[]
* IT_EVENT_EXIT =
I_TABNAME_HEADER = 'ITAB'
I_TABNAME_ITEM = 'JTAB'
I_STRUCTURE_NAME_HEADER = 'LFA1'
I_STRUCTURE_NAME_ITEM = 'EKKO'
IS_KEYINFO = KINFO
* IS_PRINT =
* IS_REPREP_ID =
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
* IR_SALV_HIERSEQ_ADAPTER =
* IT_EXCEPT_QINFO =
* I_SUPPRESS_EMPTY_DATA = ABAP_FALSE
* IMPORTING
* E_EXIT_CAUSED_BY_CALLER =
* ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB_HEADER = ITAB[]
T_OUTTAB_ITEM = JTAB[]
* EXCEPTIONS
* PROGRAM_ERROR = 1
* OTHERS = 2
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
FORM TOP_OF_PAGE.
REFRESH HEADER.
HEADER-TYP = 'H'.
HEADER-INFO = 'VENDORS & PURCHASE DOC DETAILS'.
APPEND HEADER.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = HEADER[]
* I_LOGO =
* I_END_OF_LIST_GRID =
* I_ALV_FORM =
ENDFORM.Chandu,
Hierarchy ALV is used to display "Header and Item" lists. eg. Sales Order Header and Item where VBAK is header and VBAP is item with the relationship being VBELN.
In your example, you have only included LFA1 data in your fieldcatalog. You see the fieldcatalog tells the Fm which fields and more importantly, from which Internal Tables the data is sourced from. Personally I don't use REUSE_ALV_FIELDCATALOG_MERGE but rather build my own fieldcatalog.
Here is a sample ALV Hierarchy Program I have writte:
* This program is an example of how the ALV Hierarchy Display works.
* It will display a sales order and it's associated line items
REPORT zpat2.
* Types
TYPE-POOLS: kkblo.
* Database Tables
TABLES: vbak, vbap.
* Structures
DATA: st_fieldcat TYPE slis_fieldcat_alv.
DATA: st_keyinfo TYPE slis_keyinfo_alv.
DATA: st_sort TYPE slis_sortinfo_alv.
DATA: st_layout TYPE slis_layout_alv.
* Internal tables
DATA: tbl_fieldcat TYPE slis_t_fieldcat_alv.
DATA: tbl_sort TYPE slis_t_sortinfo_alv.
DATA: BEGIN OF tbl_header OCCURS 0.
INCLUDE STRUCTURE vbak.
DATA: END OF tbl_header.
DATA: BEGIN OF tbl_item OCCURS 0.
INCLUDE STRUCTURE vbap.
DATA: END OF tbl_item.
* Constants
CONSTANTS: c_y VALUE 'X'. "Yes
CONSTANTS: c_n VALUE ' '. "No
* Simple Variables
DATA: field_name(30) TYPE c,
g_repid like sy-repid.
* Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK sel_options WITH FRAME TITLE text-tt1.
SELECT-OPTIONS s_vbeln FOR vbak-vbeln.
SELECTION-SCREEN END OF BLOCK sel_options.
* Start of Selection
START-OF-SELECTION.
* Get the Report ID
g_repid = sy-repid.
* Select data from the Sales Document Header Table
SELECT * FROM vbak INTO TABLE tbl_header
WHERE vbeln IN s_vbeln.
* Select the relevant Sales Document Item data
SELECT * FROM vbap INTO TABLE tbl_item
FOR ALL ENTRIES IN tbl_header
WHERE vbeln = tbl_header-vbeln.
* End of Selection
END-OF-SELECTION.
PERFORM get_keyinfo.
PERFORM get_layout.
PERFORM get_sort.
PERFORM get_fieldcat.
PERFORM create_report.
*& Form get_fieldcat
* text
FORM get_fieldcat.
* Here the field catalog is created. To display more fields simply
* 'uncomment' the additional lines and add the field name. Also note
* that the field catalog is much more powerful than this. You can
* intensify fields, change the colour, assign reference fields, etc.
* Look at type slis_fieldcat_alv for more options.
* Header
PERFORM write_fieldcat USING 'VBELN' 'TBL_HEADER' 'VBAK' c_y 1
c_n c_y c_n c_n.
PERFORM write_fieldcat USING 'ERDAT' 'TBL_HEADER' 'VBAK' c_n 2
c_n c_n c_n c_y.
PERFORM write_fieldcat USING 'AUDAT' 'TBL_HEADER' 'VBAK' c_n 3
c_n c_n c_n c_n.
PERFORM write_fieldcat USING 'VBTYP' 'TBL_HEADER' 'VBAK' c_n 4
c_n c_n c_n c_n.
PERFORM write_fieldcat USING 'WAERK' 'TBL_HEADER' 'VBAK' c_n 5
c_n c_n c_n c_n.
PERFORM write_fieldcat USING 'VKBUR' 'TBL_HEADER' 'VBAK' c_n 6
c_n c_n c_n c_y.
* perform write_fieldcat using ' ' 'TBL_HEADER' 'VBAK' ' ' 7.
* perform write_fieldcat using ' ' 'TBL_HEADER' 'VBAK' ' ' 8.
* perform write_fieldcat using ' ' 'TBL_HEADER' 'VBAK' ' ' 9.
* perform write_fieldcat using ' ' 'TBL_HEADER' 'VBAK' ' ' 10.
* Item
PERFORM write_fieldcat USING 'POSNR' 'TBL_ITEM' 'VBAP' c_y 1
c_n c_n c_n c_n.
PERFORM write_fieldcat USING 'MATNR' 'TBL_ITEM' 'VBAP' c_n 2
'C411' c_n c_n c_n.
PERFORM write_fieldcat USING 'NETPR' 'TBL_ITEM' 'VBAP' c_n 3
'C300' c_n c_y c_n.
PERFORM write_fieldcat USING 'PRCTR' 'TBL_ITEM' 'VBAP' c_n 4
c_n c_n c_n 'X'.
PERFORM write_fieldcat USING 'GSBER' 'TBL_ITEM' 'VBAP' c_n 5
c_n c_n c_n 'X'.
PERFORM write_fieldcat USING 'WERKS' 'TBL_ITEM' 'VBAP' c_n 6
c_n c_n c_n 'X'.
PERFORM write_fieldcat USING 'AUFNR' 'TBL_ITEM' 'VBAP' c_n 7
'C611' c_n c_n c_n.
* perform write_fieldcat using ' ' 'TBL_ITEM' 'VBAP' ' ' 8.
* perform write_fieldcat using ' ' 'TBL_ITEM' 'VBAP' ' ' 9.
* perform write_fieldcat using ' ' 'TBL_ITEM' 'VBAP' ' ' 10.
* perform write_fieldcat using ' ' 'TBL_ITEM' 'VBAP' ' ' 11.
* perform write_fieldcat using ' ' 'TBL_ITEM' 'VBAP' ' ' 12.
ENDFORM. " get_fieldcat
*& Form write_fieldcat
* text
* -->name Field name
* -->tab Table name
* -->st Structure Name
* -->key Is this field a Key?
* -->pos Position Number
* -->emp Emphasize
* -->hot Hotspot
* -->sum Do_sum
* -->hide No_out
FORM write_fieldcat USING name tab st key pos emp hot sum hide.
st_fieldcat-fieldname = name.
st_fieldcat-tabname = tab.
st_fieldcat-ref_tabname = st.
st_fieldcat-key = key.
st_fieldcat-col_pos = pos.
st_fieldcat-emphasize = emp.
st_fieldcat-hotspot = hot.
st_fieldcat-do_sum = sum.
st_fieldcat-no_out = hide.
APPEND st_fieldcat TO tbl_fieldcat.
CLEAR st_fieldcat.
ENDFORM. " write_fieldcat
*& Form create_report
* Hummmm I wonder what this subroutine does?
FORM create_report.
* Here we call the Function Module to create the Hierarchical
* Sequential List
CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
EXPORTING
i_interface_check = ' '
i_callback_program = g_repid
i_callback_user_command = 'PROCESS_USER_COMMANDS'
is_layout = st_layout
it_fieldcat = tbl_fieldcat
it_sort = tbl_sort
i_default = 'X'
i_save = 'A'
is_variant = ' '
i_tabname_header = 'TBL_HEADER'
i_tabname_item = 'TBL_ITEM'
is_keyinfo = st_keyinfo
TABLES
t_outtab_header = tbl_header
t_outtab_item = tbl_item
EXCEPTIONS
program_error = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDFORM. " create_report
*& Form get_keyinfo
* text
FORM get_keyinfo.
* This defines the "link" between the "header" and "item" tables
st_keyinfo-header01 = 'VBELN'.
ENDFORM. " get_keyinfo
*& Form get_sort
* text
FORM get_sort.
* Here we sort the report by the Document Number...why not?
REFRESH tbl_sort.
CLEAR st_sort.
st_sort-spos = 1.
st_sort-fieldname = 'VBELN'.
st_sort-up = 'X'.
APPEND st_sort TO tbl_sort.
ENDFORM. " get_sort
* FORM process_user_commands *
* Interactive Reporting commands
* --> SYST-UCOMM *
* --> SELFIELD *
FORM process_user_commands USING syst-ucomm LIKE syst-ucomm
selfield TYPE slis_selfield.
* This subroutine is called when there is user interaction in the output
* In this case if the user double clicks the Document Number then the
* program will call transaction VA03 and display the Sales Document
CASE syst-ucomm.
WHEN '&IC1'.
GET CURSOR FIELD field_name.
IF field_name = 'TBL_HEADER-VBELN'.
READ TABLE tbl_header INDEX selfield-tabindex.
CHECK tbl_header-vbeln NE 0.
SET PARAMETER ID 'AUN' FIELD tbl_header-vbeln.
CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
ENDIF.
WHEN OTHERS.
ENDCASE.
ENDFORM. "process_user_commands
*& Form get_layout
* text
FORM get_layout.
* Here we manipulate the layout of the list. In this instance we are
* giving the list a 'zebra' format. Once again like the field catalog
* there are many more options available. Look at type slis_layout_alv
* for more options.
CLEAR st_layout.
st_layout-zebra = 'X'.
ENDFORM. " get_layout -
Report painter transportation from 4.6b to ecc6
Dear Report painter expert
We have two deferent servers one is 4.6 b and another one is ecc 6.0. In 4.6 b they are created 130 reports by using report painter. Now they are doing Migration to 4.6 b to ecc6 and globalization (clubbing all the servers into one server).
My query is it possible to transport all the 130 report from 4.6 b version to ecc6.0 or else we have create the all the report manually.
Regards,
VenkataswamyHi
Read the SAP help which talks about "Dependant objects" tick.. It says dependant objects except Cost Center and Cost ele groups are transferred..
Does the Set 0102DBAGXE_INVEST pertains to Cost centers or cost elements
If yes, Go to GS03, and Menu UTILITIES > Export .. Export it in a flat file and import it in ECC 6.0 before importing the reports
Regards
Ajay M
SAP HELP TEXT ENCLOSED BELOW
Indicator: Export/import all dependent objects
If you set this indicator, all dependent objects in addition to the desired objects are exported or imported.
Example
If you export or import a report group and the indicator is set, all reports in the report group, all sets (or set hierarchies) contained in the reports, the set and value variables as well as the library will also be exported or imported.
Exception
Groups from CO (such as cost center groups, cost element groups) are not transported as dependent objects. If you want to transport groups from CO, this must be done explicitly.
Does the
Maybe you are looking for
-
Is this a bug in JDBC driver for SQL Server 2000?
Hi, all: I encountered a strange problem today. My struts/jsp application throws an error while executing the following SQL: SELECT id,moduleName,pageLevel,ent_name,style_name,type,hits,startDate,expireDate,expireAction,active,dealtime FROM v_ad WHER
-
COPA - SD - Rebates accrual & Credit memo
We have rebates accrual posting from SD- Dr. Rebate A/c (PL) 1000 - this would also been in COPA Cr. Rebate accrual (BS) 1000 Now you settle the rebate(credit memo) - say you decide to settle for 1200 At this point the system will do the following en
-
How to create patterns(seamless)?
I was wondering if there was any good recommended tutorials or good readings on how to make patterns(seamless) in illustrator for use on other designs? Anything that is easy to understand and learn from would be great. Thanks and I appreciate your he
-
Have been using iTunes on PC no problem. Have new laptop and only see a few of my songs in iTunes there. What's up? TY
-
Hi Guys, My problem with the updater is that it says current version 3.83 new version 6.01(so there is comms to my phone) it then downloads the 76 Mb file and then says updating software, Estimated time 15 minutes and then nothing happens thereafter.