Precautions to be taken while changing the Query read mode in PED system
Dear Experts,
I got a task to change the Query Read mode for more No. of queries in Production system directly itself.
Request you to let me what are the steps to be followed/precautions to be taken while changing the Query Read mode in PED.
one more doubt regarding this.....If i plan to change the Read mode of Query say Q1, how can i come to know weather the Q1 is executing or not executing by that time.
Thanks in advance for valuable response.
Thanks & Regards,
Ramesh - Kumar
Hello,
You can change the query read mode in transaction 'RSRT', here are the steps:
1) Access transaction RSRT and enter the query name
2) Select the 'Properties' option
3) Un-check the 'Info provider' setting next to the 'Read mode' --> This enables you to change the read mode of the query --> Execute
4) Choose the option 'Generate Report' to re-generate the query program
Hope this info helps.
Thanks
Bala
Similar Messages
-
Problem while changing the query of the field in Oracle apps 11.5.10
Hello All,
Requirement:
User want to change the query of the LOV attached to Ordered item field on Line items tab on the Sales order form in Order managment
Block name = 'LINE'
Field name = 'ORDERED_ITEM_DSP'
LOV attached to this field in FMB: ITEMS
LOV attached to this field in front end: ENABLE_LIST_LAMP
Problem: Following code is firing at all points (Debug messages are appearing at all points) but Query of the LOV attached to item is still same.
How can in FMB LOV is "ITEMS" and in front end "ENABLE_LIST_LAMP"
My guess is there is some problem with the LOV name which we are passing in the code below. Because LOV name attached to item are different in front end and FMB. There is no LOV in FMB which has “SYSTEM ITEMS Description” kind of structure.
I have written following code in custom.pll (l_chr_rg_query is query taken from the record group attached to “ITEMS” named LOV with some modifications ex: rownum<6 so that it will show only 6 records in LOV if it is really firing our query for LOV)
IF ( form_name = ‘OEXOEORD’
AND block_name = ‘LINE’
AND field_name = ‘ORDERED_ITEM_DSP’
AND event_name = ‘WHEN-NEW-ITEM-INSTANCE’
THEN
MESSAGE (‘message1’);
l_chr_rg_name := ‘XXLION_UNIFORM_CODE_RG’;
l_chr_rg_query :=
‘SELECT item, item_id, item_description, inventory_item_id,item_identifier_type,null item_identifier_type_meaning, ‘
|| ‘inventory_item, address, cust_address, item_definition_level ‘
|| ‘FROM oe_return_items_v ‘
|| ‘WHERE (sold_to_org_id = :parameter.lov_num_param1 OR sold_to_org_id IS NULL)’
|| ‘ and rownum < 6 ORDER BY item’;
MESSAGE (‘message2’);
l_rg_id := FIND_GROUP (l_chr_rg_name);
MESSAGE (‘message3’);
IF ID_NULL (l_rg_id)
THEN
MESSAGE (‘Creating record group here’);
l_rg_id :=
CREATE_GROUP_FROM_QUERY (l_chr_rg_name, l_chr_rg_query);
END IF;
errcode := POPULATE_GROUP (l_rg_id);
MESSAGE (‘ERROCODE is : ‘ || errcode);
L_lov_id := FIND_LOV (‘ITEMS’); --My guess is this LOV name is the source of problem.
MESSAGE ('Error code is4');
SET_LOV_PROPERTY (l_lov_id, group_name, l_rg_id);
MESSAGE ('Error code is5');
SET_ITEM_PROPERTY ('LINE.ORDERED_ITEM_DSP', lov_name, 'ITEMS');
END IF;I found that there is no problem with code. My problem is not technical, its a functional problem.
It is related to Inventory's "System Items" KFF.
Can anybody tell me, to this "System Items" KFF, one value set is assigned. but it is of none type of value set. so from where the values in LOV are coming? -
What are the precautions to be taken while archiving the POs' and Material
Hi All,
I want to archive the Purchase orders and Material documents. Is there any standard rule to follow this procedure. What are the further consequences for the consecutive documents. And how do you check the open POs' of all.
I have archived PRs' and Invoices, but these are not interlinked.
Could you please help me in this, so that I will be very much thankful to you.
Regards,
RamDear Ramesh,
Go to Tcode ARCHGUIDE --> Application Specific analyses and setting --> MM -->MM_EKKO and MM_MABTEL
You can tick on the documentation and link to SAP help for all the guide and need for this archiving.
Regards,
w1n -
Query read mode change from 'A' to 'H'
Dear All Experts,
I'm new to optimization Project. I got a task to change the Query read mode from 'A' to 'H" of some queries. I will change it by using T-code RSRT.
My doubt is in which system we will change the settings i.e., directly in Production system or i have to change in Development system and then transportation to remaining systems?
Is there any another option to do this other than RSRT.
Requesting you all to help me in this cleraly.
Thanks in Advance.
Regards,
Ramesh KumarDear Experts,
Thanks for your valuable information and my doubt is if I change the settings in Infoprovider level, then all the queries which were built on particular Infoprovider will get changed right?
My task is to change the Query read mode of only some queries of Info Provider but not for all queries in Infoprovider.
Thanks in advance for your valuable assistance.
Regards,
Ramesh-Kumar. -
Error while changing the Display Attribute into Navigational Attribute
Hi all.. Gud Mrng.
I was changed the attribute (product) from display attribute into navigational attribute and while save and activating the info object it is not getting activated and it is throwing the below error message.
Error Message: u201CThe Info object is being used in several data targetsu201D
My Questions:
i) Do I need to delete the data from all the data targets (where this info object is using)??
ii) Do I need to delete data only from the main info object (Zmaterial)? Is this single action enough?
Please suggest me which action I need to follow & What are the precautions need to take while changing the Display Attribute (product) into Navigational attribute of info object (Zmaterial).
Thanks in advance.
Thanks & Regards,
B VenugopalHi Garima
Only in case of key figures we cannot change it from display to navigational.
If the info object is a characteristics then in the General tab of the info object if you select 'attribute only' then the iobj would be a display attribute only. If you leave it unmarked then you can use the iobj as a navigational atribute.
I am sure you know that these settings only mean if a IOBJ can be used as display or navigational. To use it as a navigational within another object you will have to change the settings from 'DIS' to 'NAV' for the said info object in the 'Attributes' tab of its parent info object.
Further if you use the parent info object in any data target / infio provider you will have to further mark the info object as 'navigational' while defining the attrbute of the said data target / info provider. The info object gets displayed in the data target / info provider attribute properties as 'parent IOBJ_info object'
Cheers
Umesh -
Invalid read mode while executing the query
Hi,
I have developed a query based on a cube in MM module.
When I try to execute the query, the following error is being displayed:
Invalid read mode
Message no. BRAIN017
Diagnosis
If queries (often unintentionally) are assigned the read mode "Query to Read All Data at Once", this often results in performance problems. To eliminate this problem, this warning is displayed when you execute a query with this read mode when the query is generated.
Procedure for System Administration
Before you execute the query, repair the read mode:
u2022 You can repair the read mode for this query in the Query Monitor (transaction RSRT1). You can set the read mode for the selected query by choosing Query -> Read Mode.
u2022 If this warning is displayed when you check a query, you need to change the default read mode for new queries in the InfoCube in InfoCube maintenance. In InfoProvider maintenance, choose Environment -> InfoProvider Properties -> Change and make the relevant settings on the Query/Cache tab page.
Please let me know what are the exact setting that I need to do and where.
Thanks in advance.
Will assign points for the solution.
Thanks & Regards.Hi Ganesh,
You can change the read mode by going to transaction RSRT, entering the query name and then clicking the properties button. A dialog box will then be displayed that allows you to change the read mode.
The question of what's the best read mode for you query depends on the requirements of the query:
If you choose "read all data at once", it will take quite awhile before the first view of the query is shown. This is because it basically reads all data needed for your query (e.g. data for hierarchy nodes etc). However, after the initial view, successive navigations might be a lot faster.
The read mode "Read data during navigation and expansion of hierarchies" is usually the best mode. The initial view will show up in the least amount of time in this mode. However, when the users start to navigate, data will then be read from the database (aggregates, or the main cube tables) or the cache.
The read mode "Read data during navigation" is like the "Read data during navigation and expansion of hierarchies" mode. However, it will also read the data for the hierarchy nodes. Expansions of the hierarchy will therefore be faster in this mode. Of course, there's additional overhead for the initial view.
Hope this helps. Cheers. -
While running the query how much time it will taken, I want to see the time
Hi Folks
I would like to know ... While running the query how much time it will be taken, I want to see the time? in WEBI XI R2.....
Plz let me know the answer.......Hi Ravi,
The time a report runs is estimated based on the last time it was run. So you need to run the report once before you can see how long it will take. Also it depends on several factors... the database server could cache some queries so running it a second time immediately after the first time could be quicker. And there is the chance of changing filters to bring back different sets of data.
You could also schedule a report and then check the scheduled instance's status properties and view how long a report actually ran.
Good luck -
RC 8 error while transporting the query from Dev to Qa - Element missing
Hi All,
I have made a multiprovider by copying one existing one.
I have copies one of the Bex queries using RSZC from the source to Target MP.
While transporting the query from Dev to QA i have got the following error. (I have already moved the Multi Prov in a previous TR)
Has anyone seen similar types before. Any inputs will be highly appreciated.
Start of the after-import method RS_ELEM_AFTER_IMPORT for object type(s) ELEM (Activation Mode)
Error when activating element 4LUSZK561QN74UDBJ7BPU9GFM
Element 4LUSZJXHIS1HM7TVDD9DK7HPU is missing in version M
End of after import methode RS_ELEM_AFTER_IMPORT (Activation Mode) - runtime: 00:00:06
Start of the after-import method RS_ELEM_AFTER_IMPORT for object type(s) ELEM (Delete Mode)
End of after import methode RS_ELEM_AFTER_IMPORT (Delete Mode) - runtime: 00:00:14
Errors occurred during post-handling RS_AFTER_IMPORT for ELEM L
RS_AFTER_IMPORT belongs to package RS
The errors affect the following components:
BW-WHM (Warehouse Management)
Post-import method RS_AFTER_IMPORT completed for ELEM L, date and time: 20110517070045
Post-import methods of change/transport request BDAK959603 completed
Start of subsequent processing ... 20110517070025
End of subsequent processing... 20110517070045
Kind regards,Hi Jith,
First of all try to consolidate all your objects in a single TR and then move to Q from D.
In this case check for the list of objects that you have in your TRs. If TR 3 have all the Objects that were in TR1, TR2, then transporting TR3 alone will work.
Also, you can find the information related to the elements that were missed in your TR1,TR2 by following process.
1. Go to your transport Logs and then to the entries marked as Error.
2. There you will find the Query Element Ids, copy them
3. Now, go to Table(Se16) RSZELTDIR, there enter those query elements.
Now, you can able to find the elements that you have missed in your TRs. Hope this helps you. -
Error while changing the physical IP address of SOA related datasource
Hello Everyone!!!
I am facing a problem while changing the ip address of my SOA related datasource in weblogic 10.3,Below is a brief description about my prb:
I have created a domain in weblogic 10.3 and have configured a datasource to it and its working fine initially.
But i had to change the ip address of my datasource(i.e Edit the existing the setting of my domain) as my database was migrated to another m/c.The changes that i did was,I changed the url in the connectionpool tab of each of the datasource's listed in admin console(Please let me know if i have left out any other important place in which i had to make this change).
After making this change my ManagedServer starts but my Enterprise Application named soa-infra doesnt start and when i checked the log to find out the error,this is what i came across:
B2B-50025: Repository error: Error -: B2B-51572: Error reading input stream.: java.io.IOException: Stream closed
at oracle.tip.b2b.init.Repository.initExchange(Repository.java:658)
at oracle.tip.b2b.init.Repository.initialize(Repository.java:764)
at oracle.tip.b2b.init.B2BServer.readRepository(B2BServer.java:509)
at oracle.tip.b2b.init.B2BServer.initialize(B2BServer.java:212)
at oracle.tip.b2b.engine.ThreadWorkExecutor.startB2B(ThreadWorkExecutor.java:345)
at oracle.tip.b2b.engine.ThreadWorkExecutor.run(ThreadWorkExecutor.java:203)
at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:105)
at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)
at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
Caused by: Error -: B2B-51572: Error reading input stream.: java.io.IOException: Stream closed
Any suggestion would be of great help.
Thks in advance!!!Hey thks for the reply,
We were able to solve the problem by just restarting our database,
i got some reference from the below link(pls refer to this topic:Changing the IP Address of a Metadata Repository Installation):
[http://download.oracle.com/docs/cd/E12839_01/core.1111/e10105/host.htm#CHDHAEFE]
but m still confused do i have to restart my database server each time i change the DB server that m pointing to in my weblogic console and if yes can you pls help me understand what change happens when the database restarts that makes this work.
Another issue that m facing now is that after solving the above prb(by restarting the DB) m not able to deploy process's on to my server.
The Exception that appears in the log file is as follows:
[2011-02-08T13:03:33.220+05:30] [soa_server1] [ERROR] [] [oracle.soa.bpel.engine.compiler] [tid: [ACTIVE].ExecuteThread: '17' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: 0000Is4C5SLBLA1LzuP5iW1DKEXf000d33,0] [APP: soa-infra] [dcid: d61ccdb1526887f2:678e40b9:12e040e4cba:-7ffd-000000000000290f] <BPEL1Processor::generateProcessClass> MerchantSales_BPELProcess.bpel(line 228): invalid query[[
query "/EmailPayload/ns3:FromAccountName" is invalid, because java.lang.IllegalArgumentException: null schema location for ns=http://xmlns.oracle.com/ias/pcbpel/NotificationService [Cause=null schema location for ns=http://xmlns.oracle.com/ias/pcbpel/NotificationService]
Check the XML schema and make sure your query string is valid
[2011-02-08T13:03:33.448+05:30] [soa_server1] [ERROR] [] [oracle.soa.bpel.engine.deployment] [tid: [ACTIVE].ExecuteThread: '17' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: 0000Is4C5SLBLA1LzuP5iW1DKEXf000d33,0] [APP: soa-infra] [dcid: d61ccdb1526887f2:678e40b9:12e040e4cba:-7ffd-000000000000290f] <CubeProcessLoader::create> [[
java.lang.Exception: BPEL compilation failed
at com.collaxa.cube.lang.compiler.BPEL1Processor.generateProcessClass(BPEL1Processor.java:529)
at com.collaxa.cube.lang.compiler.BPEL1Processor.loadProcess(BPEL1Processor.java:495)
at com.collaxa.cube.lang.compiler.BPEL1Processor.loadProcess(BPEL1Processor.java:438)
at com.collaxa.cube.lang.compiler.BPEL1Processor.createCubeProcess(BPEL1Processor.java:396)
at com.collaxa.cube.engine.deployment.CubeProcessFactory.create(CubeProcessFactory.java:61)
at com.collaxa.cube.engine.deployment.CubeProcessLoader.create(CubeProcessLoader.java:112)
at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:238)
at com.collaxa.cube.engine.deployment.DeploymentManager.deployComponent(DeploymentManager.java:182)
at com.collaxa.cube.ejb.impl.CubeServerManagerBean._deployOrLoadComponent(CubeServerManagerBean.java:726)
at com.collaxa.cube.ejb.impl.CubeServerManagerBean.deployComponent(CubeServerManagerBean.java:114)
at com.collaxa.cube.ejb.impl.bpel.BPELServerManagerBean.deployComponent(BPELServerManagerBean.java:85)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149) -
ORA-01722 Invalid Number while executing the Query
Hi Friends, need your valuable suggestions.
We have a DSO with a characteristic info object ZDAT (DATA TYPE DATS) with a reference from 0DATE.
I am able to see the data of the info object ZDAT using LIST CUBE on the DSO.
While using this info object ZDAT in the query moniter or bex analyzer it shows the following errors.
EORA-01722: invalid number .
EError reading the data of InfoProvider.
EError while reading data; navigation is possible
I>> Row: 71 Inc: NEXT_PACKAGE Prog: CL_SQL_RESULT_SET.
Kindly please help me on this issue.Hello soumya
Can you check if you have any NULL values in ZDAT in from LISTCUBE?
If yes, check the note below
https://service.sap.com/sap/support/notes/1327167.
If null value is your problem, you can change the query setting for not to show the null values. Just add a filter in ZDAT to exclude "NULL"
Regards
Anindya -
All default routing value has to be changed, while changed the work center in production order
Dear friends,
our client they want to change the work center in production order.according to production version work center also they are changed.so while change the WC,all the default value has be changed as per routing what we maintained in routing.At present we have to enter the manually change the W.C as well as set up time and operation time enter manually.Any other option to do the automatically capture value from routing while change in Work center in production order.pl help me on this.
Thanks&Regards
Sabhapathy RHi Rahul,
Thanks for reply. I am maintained in diff value maintained routing , Ex :First routing i have work center 'X' value maintained as a setup time in 15 Min's and operation time 10 Min's
second work center 'Y' I have maintained as set up time 10 Min's and operation time 30 Min's,
Now I want to change the work center in production order as a 'Y' so whatever value maintained in routing , it has to be changed automatically (10 min's and 30 Min's), but system will not change only old value only picked (15Min's AND 10 Min's).
Now I think you get to know what the client requirement, kindly do the need full.
Regards,
Sabhapathy R -
ABAP Dump while Changing the Layout fields in Report output - RCOPCA02
Hi,
I Copied the Standard Program RCOPCA02 to ZRCOPCA02. I added two new fields(AUART, AUGRU) in the report output. It is executing correctly with default layout, While Changing the layout for displaying new fields it is dumping.
I am not understanding, What should i do...
Here is the Code.
report ZRCOPCA02 no standard page heading message-id km
line-count (2) line-size 81.
type-pools: slis, ecarc.
DDIC-Tabellen *******************************************************
tables: glpca, "Einzelposten / Ist
glu1, "Übergabestruktur FI-SL-Anzeige
t000,
tka01,
sscrfields,
vbak.
Variablen und int. Tabellen *****************************************
data: l_vbeln like vbak-vbeln,
l_auart like vbak-auart,
l_augru like vbak-augru.
data: afield type slis_fieldcat_alv,
sp_group type slis_sp_group_alv,
t_listheader type slis_t_listheader with header line,
t_layout type slis_layout_alv,
t_fieldcat type slis_t_fieldcat_alv,
t_spec_groups type slis_t_sp_group_alv,
event type slis_alv_event,
t_events type slis_t_event,
g_variant like disvariant,
gx_variant like disvariant,
g_exit(1) type c,
g_save(1) type c,
g_repid like sy-repid,
msgtyp like sy-msgty,
lt_dynpread like dynpread occurs 1 with header line,
ls_rpcak like rpcak, "note 0310592
packsize type i value 1000,
text1(60) type c,
text2(60) type c,
oldkokrs like glpca-kokrs,
oldracct like glpca-racct.
data: whr_size type i value 50,"Maximum of single values per MIC 46a
"charact. in the where-clause of the select-statement
lines type i, "number of lines of range table MIC 46a
cnt_rldnr type i, "Zähler Anzahl selektierter Ledger
cnt_kokrs type i, "Zähler Anzahl selektierter KoReKreise
cnt_poper type i, "Zähler Anzahl selektierter Perioden
cnt_ryear type i, "Zähler Anzahl selektierter GeschJahre
cnt_rvers type i, "Zähler Anzahl selektierter Versionen
cnt_bukrs type i, "Zähler Anzahl selektierter BuKreise
empge like dkobr-empge,
ksl_curr like tka01-pcacur,
hsl_curr like t001-waers,
a_rec like rstirec.
data: begin of dim_data.
include structure rgcdi. "data for dimensions
data: end of dim_data.
data: begin of tab_fields occurs 80,
name like dntab-fieldname, "fields in table i_glpca
end of tab_fields.
data: begin of i_glpca occurs 0.
include structure rpca2.
data: racct_ktext like rpcak-ktext,
psppp like prps-posid,
v_auart like vbak-auart,
v_augru like vbak-augru,
end of i_glpca.
data: rw_subrc like sy-subrc, "Flag: Report-Writer-Schnittstelle
re_subrc like sy-subrc, "Flag: Recherche-Schnittstelle
subrc like sy-subrc.
data: set_id like sethier-setid, "Set-ID "RDI_SETS_4.0
set_class like sethier-setclass, "Setklasse "RDI_SETS_4.0
set_sname like sethier-shortname."Setname (24) "RDI_SETS_4.0
data: authorised(1),
s_message(1),
auth_dbcount like sy-tabix,
Hex-Konstanten für Minimum/Maximum-Werte
begin of hex00,
x1(12) type c,
x2(12) type c,
end of hex00,
begin of hexff,
x1(12) type c,
x2(12) type c,
end of hexff.
ranges rclnt for glpca-rclnt.
field-symbols: type ecarc_glpca_curr.
Selektionsoptionen *************************************************
select-options:
rldnr for glpca-rldnr default '8A' no-display,
rassc for glpca-rassc no-display,
rrcty for glpca-rrcty default 0,
rrcty for glpca-rrcty,
rvers for glpca-rvers default '000',
kokrs for glpca-kokrs memory id cac,
bukrs for glpca-rbukrs memory id buk,
poper for glpca-poper default sy-datlo+4(2),
ryear for glpca-ryear default sy-datlo,
poper for glpca-poper,
ryear for glpca-ryear,
prctr for glpca-rprctr matchcode object prct,
pprctr for glpca-sprctr matchcode object prct,
RACCT FOR GLPCA-RACCT MATCHCODE OBJECT KART, "RD_P30K128304
racct for glpca-racct, "RD_P30K128304
drcrk for glpca-drcrk,
activ for glpca-activ,
rhoart for glpca-rhoart,
rfarea for glpca-rfarea,
stagr for glpca-stagr,
rtcur for glpca-rtcur,
runit for glpca-runit,
versa for glpca-versa no-display,
eprctr for glpca-eprctr no-display,
afabe for glpca-afabe no-display,
rmvct for glpca-rmvct no-display,
hrkft for glpca-hrkft no-display, "note 550972
sbukrs for glpca-sbukrs no-display, "note 550972
shoart for glpca-shoart no-display, "note 550972
sfarea for glpca-sfarea no-display, "note 550972
docct for glpca-docct,
docnr for glpca-docnr,
refdocct for glpca-refdocct,
refdocnr for glpca-refdocnr,
werks for glpca-werks,
repmatnr for glpca-rep_matnr matchcode object pca_shlp_rep_matnr,
rscope for glpca-rscope.
parameters: no_rrint no-display default ' '." skip "MICP40K066037
" report-report-interface
display variant ">>MICP40K039857
selection-screen begin of block 0 with frame title text-e01.
parameters: p_vari like disvariant-variant.
selection-screen comment 47(40) varname for field p_vari.
selection-screen end of block 0.
parameters log_grp(4) type c no-display default 'KE5Z'.
"<<MICP40K039857
ranges: v_racct for glpca-racct,
v_prctr for glpca-rprctr,
v_pprctr for glpca-sprctr.
Tabelle mit Werten aus den Berichts-Set vom Report-Writer *
data begin of val_tab occurs 50.
include structure rgciv.
data end of val_tab.
MICP30K166368
feldkatalog und interface für bb-schnittstelle rw MICP30K166368
MICP30K166368
"MICP30K166368
data begin of bbs_fieldtab occurs 20. "MICP30K166368
include structure rstifields. "MICP30K166368
data end of bbs_fieldtab. "MICP30K166368
archiv
type-pools: rsds.
types: begin of ty_archive_objects,
object like arch_obj-object,
end of ty_archive_objects,
ty_t_archive_objects type ty_archive_objects occurs 2.
constants: lc_set type c value 'X',
lc_report type progname value 'KE5Z',
lc_reporttype type reporttype value 'TR'.
tables: admi_files.
select-options lr_files for admi_files-archiv_key no-display.
parameter: read_db type c default 'X' no-display,
read_ar type c no-display,
arc_obj like arch_obj-object no-display,
read_as type c default 'X' no-display.
data : lt_arch_obj type ty_t_archive_objects with header line,
ls_selections type rsds_frange,
lt_selections type rsds_frange_t,
ls_selopt type rsdsselopt,
lt_glpca_archiv type ecarc_t_glpca_curr.
*********************************************************>>MICP40K039857
INITIALIZATION
initialization.
Diverse Initialisierungen
perform init_vars.
g_repid = sy-repid.
Set default values for record type
rrcty-sign = 'I'.
rrcty-option = 'EQ'.
rrcty-low = '0'.
append rrcty.
rrcty-low = '2'.
append rrcty.
Set default values for period and year (if kokrs or bukrs is known)
get parameter id 'BUK' field bukrs-low.
get parameter id 'CAC' field kokrs-low.
if kokrs-low is initial "get contr. area from company code
and not bukrs-low is initial.
call function 'KOKRS_GET_FROM_BUKRS'
exporting
i_bukrs = bukrs-low
importing
e_kokrs = kokrs-low
exceptions
no_kokrs_found = 1
others = 2.
if sy-subrc <> 0.
clear kokrs-low.
endif.
endif.
if not kokrs-low is initial.
call function 'K_KOKRS_READ' "get fiscal year variant
exporting
kokrs = kokrs-low
importing
e_tka01 = tka01
exceptions
not_found = 1
not_found_gjahr = 2
others = 3.
if sy-subrc = 0.
call function 'G_PERIOD_GET'
exporting
date = sy-datlo
variant = tka01-lmona
importing
period = poper-low
year = ryear-low
exceptions
ledger_not_assigned_to_company = 1
period_not_defined = 2
variant_not_defined = 3
others = 4.
if sy-subrc = 0.
poper-sign = 'I'.
poper-option = 'EQ'.
append poper.
ryear-sign = 'I'.
ryear-option = 'EQ'.
append ryear.
endif.
endif.
endif.
Settings for display variants
g_save = 'A'. "Schalter Varianten benutz./allg. speichern
clear g_variant.
g_variant-report = g_repid.
g_variant-log_group = log_grp.
g_variant-username = sy-uname.
Get default variant
gx_variant = g_variant.
call function 'REUSE_ALV_VARIANT_DEFAULT_GET'
exporting
i_save = g_save
changing
cs_variant = gx_variant
exceptions
not_found = 2.
if sy-subrc = 0.
p_vari = gx_variant-variant.
endif.
Set variant
if p_vari is initial.
p_vari = '1SAP'.
move p_vari to gx_variant-variant.
call function 'REUSE_ALV_VARIANT_EXISTENCE'
exporting
i_save = g_save
changing
cs_variant = gx_variant
exceptions
not_found = 1.
if sy-subrc ne 0.
clear p_vari.
clear gx_variant-variant.
endif.
endif.
varname = gx_variant-text.
"<<MICP40K039857
archiv
call function 'KARL_DATA_INPUT_INIT'
exporting
i_report = lc_report
i_reporttype = lc_reporttype
importing
e_xusedb = read_db
e_xusear = read_ar
e_archobj = arc_obj
e_infosys = read_as
tables
t_arch_sel = lr_files.
data: lt_excluding like sy-ucomm occurs 0 with header line.
call function 'RS_SET_SELSCREEN_STATUS'
exporting
p_status = 'SELSCREEN'
p_program = 'RCOPCA02'
tables
p_exclude = lt_excluding.
Initialisieren der Bericht/Bericht-Schnittstellen *
data: ld_no_rrint type boole_d. "note 490484 begin
import rri = ld_no_rrint from memory id 'RCOPCA02_NO_RRI'.
if ld_no_rrint = 'X'.
free memory id 'RCOPCA02_NO_RRI'.
else. "note 490484 end
call function 'G_REPORT_INTERFACE_INIT' "Report-Writer?
exporting "MICP30K166368
table = 'GLPCT' "MICP30K166368
importing
subrc = rw_subrc "MICP30K166368
tables "MICP30K166368
it_fieldr = bbs_fieldtab. "MICP30K166368
call function 'RSTI_APPL_STACK_POP'"oder Recherche?
importing
i_rec = a_rec
exceptions
appl_stack_not_initialized = 1.
re_subrc = sy-subrc.
if re_subrc = 0.
check Receiver is this report
if not ( ( a_rec-rtool = 'RT' and a_rec-ronam = 'RCOPCA02' )
or ( a_rec-rtool = 'TR' and a_rec-ronam = 'KE5Z' ) ) .
re_subrc = 2.
endif.
endif.
endif.
AT SELCTION-SCREEN on value request**********************************
*at selection-screen on value-request for racct-low. "RD "4.6a
"RD "4.6a
call function 'K_RACCT_VALUE_REQUEST' "RD "4.6a
importing "RD "4.6a
e_racct = racct-low. "RD "4.6a
"RD "4.6a
"RD "4.6a
*at selection-screen on value-request for racct-high. "RD "4.6a
"RD "4.6a
call function 'K_RACCT_VALUE_REQUEST' "RD "4.6a
importing "RD "4.6a
e_racct = racct-high. "RD "4.6a
at selection-screen on value-request for p_vari. "MICP40K039857
perform f4_for_variant. "MICP40K039857
at selection-screen on value-request for poper-low. "RD "4.6a
begin of insertion note 522715
call function 'K_KOKRS_READ'
exporting
kokrs = kokrs-low
exceptions
not_found = 1
not_found_gjahr = 2
others = 3.
if sy-subrc = 0.
end of insertion note 522715
call function 'ECPCA_RPMAX_VALUE_REQUEST' "RD "4.6a
exporting "RD "4.6a
i_kokrs = kokrs-low "RD "4.6a
i_ryear = ryear-low "RD "4.6a
importing "RD "4.6a
e_rpmax = poper-low "RD "4.6a
begin of insertion note 522715
exceptions
table_empty = 1.
endif.
end of insertion note 522715
at selection-screen on value-request for poper-high. "RD "4.6a
begin of insertion note 522715
call function 'K_KOKRS_READ'
exporting
kokrs = kokrs-low
exceptions
not_found = 1
not_found_gjahr = 2
others = 3.
if sy-subrc = 0.
end of insertion note 522715
call function 'ECPCA_RPMAX_VALUE_REQUEST' "RD "4.6a
exporting "RD "4.6a
i_kokrs = kokrs-low "RD "4.6a
i_ryear = ryear-low "RD "4.6a
importing "RD "4.6a
e_rpmax = poper-high "RD "4.6a
begin of insertion note 522715
exceptions
table_empty = 1.
endif.
end of insertion note 522715
AT SELCTION-SCREEN ***************************************************
at selection-screen.
perform pai_of_selection_screen.
begin of insertion note 522715
if not kokrs-low is initial.
call function 'K_KOKRS_READ'
exporting
kokrs = kokrs-low
exceptions
not_found = 1
not_found_gjahr = 2
others = 3.
if sy-subrc <> 0.
message e101(ki) with kokrs-low.
endif.
endif.
end of insertion note 522715
archiv
if sy-ucomm = 'FC01' or sy-ucomm = 'UCDS'
or sy-ucomm = 'ONLI' and read_ar = 'X'
and read_as is initial and lr_files[] is initial.
if lt_arch_obj[] is initial.
lt_arch_obj-object = 'PCA_OBJECT'. append lt_arch_obj.
lt_arch_obj-object = 'EC_PCA_ITM'. append lt_arch_obj.
endif.
call function 'KARL_DATA_INPUT_SELECT'
exporting
i_db_and_arc = lc_set
i_infosys_possible = lc_set
i_object_fixed = 'V'
i_documentation = 'KARL_DATA_INPUT_SEL_KE5YZ'
i_report = lc_report
i_reporttype = lc_reporttype
tables
t_objects = lt_arch_obj
t_arch_sel = lr_files
changing
c_xusedb = read_db
c_xusear = read_ar
c_archobj = arc_obj
c_infosys = read_as.
endif.
START-OF-SELECTION **************************************************
start-of-selection.
Default-Werte löschen, falls Aufruf über Recherche
oder Report-Writer erfolgt ist
if no_rrint is initial and ld_no_rrint is initial. "note 490484
if rw_subrc eq 0 or re_subrc eq 0.
refresh: rldnr, rrcty, rvers, kokrs, bukrs, poper, ryear,
racct, prctr, pprctr, drcrk, activ, rhoart, rfarea,
versa, afabe, eprctr,
v_racct, v_prctr, v_pprctr.
clear: rldnr, rrcty, rvers, kokrs, bukrs, poper, ryear,
racct, prctr, pprctr, drcrk, activ, rhoart, rfarea,
versa, afabe, eprctr,
v_racct, v_prctr, v_pprctr.
endif.
Parameter einlesen über Report-Writer-Schnittstelle *
if rw_subrc eq 0.
perform rw_get_parameters.
oder Parameter einlesen über Recherche-Schnittstelle *
elseif re_subrc eq 0.
perform re_get_parameters.
endif.
endif.
if read_db = 'X'. " read from DB (archiv)
Bewegungsdaten einlesen und puffern...................................
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = 'Einzelposten selektieren'(p10).
Use dirty trick to mislead DB-optimizer
call function 'DB_DO_NOT_USE_CLIENT_INDEX'
exporting
value = sy-mandt
tables
mandttab = rclnt.
select (tab_fields) from glpca
client specified
package size packsize
APPENDING CORRESPONDING FIELDS OF TABLE i_glpcaO
into corresponding fields of table i_glpca
where rldnr in rldnr
and rrcty in rrcty
and rvers in rvers
and kokrs in kokrs
and rbukrs in bukrs
and ryear in ryear
and rassc in rassc
and hrkft in hrkft "note 550972
and sbukrs in sbukrs "note 550972
and shoart in shoart "note 550972
and sfarea in sfarea "note 550972
and racct in racct
and rprctr in prctr
and sprctr in pprctr
and poper in poper
and drcrk in drcrk
and activ in activ
and rhoart in rhoart
and rfarea in rfarea
and versa in versa
and eprctr in eprctr
and afabe in afabe
and rmvct in rmvct
and docct in docct
and docnr in docnr
and stagr in stagr
and rtcur in rtcur
and runit in runit
and refdocct in refdocct
and refdocnr in refdocnr
and werks in werks
and rep_matnr in repmatnr "RDIP40K020663
and rscope in rscope "RDIP40K020663
and rclnt in rclnt. "dirty trick to mislead DB-optimizer
if sy-dbcnt > 1.
text1 = sy-dbcnt.
condense text1.
concatenate text1 text-m01 into text2 separated by space.
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = text2. " ... Datensätze gelesen
endif.
endselect.
Entfernt nicht zugehörige Einträge....................................
loop at i_glpca where ( not rprctr in v_prctr )
or ( not sprctr in v_pprctr )
or ( not racct in v_racct ).
delete i_glpca.
endloop.
endif.
*archiv
if read_ar = 'X' and not
( read_as is initial and lr_files[] is initial ).
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = 'Lesen im Archiv'(p12).
define fill_lt_selections.
if not &2[] is initial.
clear ls_selections.
move &1 to ls_selections-fieldname.
loop at &2.
clear ls_selopt.
move-corresponding &2 to ls_selopt.
append ls_selopt to ls_selections-selopt_t.
endloop.
append ls_selections to lt_selections.
endif.
end-of-definition.
fill_lt_selections 'RLDNR' rldnr.
fill_lt_selections 'RRCTY' rrcty.
fill_lt_selections 'RVERS' rvers.
fill_lt_selections 'KOKRS' kokrs.
fill_lt_selections 'RBUKRS' bukrs.
fill_lt_selections 'POPER' poper.
fill_lt_selections 'RYEAR' ryear.
fill_lt_selections 'RPRCTR' prctr.
fill_lt_selections 'SPRCTR' pprctr.
fill_lt_selections 'RACCT' racct.
fill_lt_selections 'DRCRK' drcrk.
fill_lt_selections 'ACTIV' activ.
fill_lt_selections 'RHOART' rhoart.
fill_lt_selections 'RFAREA' rfarea. "note 401961
fill_lt_selections 'STAGR' stagr.
fill_lt_selections 'RTCUR' rtcur.
fill_lt_selections 'RUNIT' runit.
fill_lt_selections 'VERSA' versa.
fill_lt_selections 'EPRCTR' eprctr.
fill_lt_selections 'AFABE' afabe.
fill_lt_selections 'RMVCT' rmvct.
fill_lt_selections 'DOCCT' docct.
fill_lt_selections 'DOCNR' docnr.
fill_lt_selections 'REFDOCCT' refdocct.
fill_lt_selections 'REFDOCNR' refdocnr.
fill_lt_selections 'WERKS' werks.
fill_lt_selections 'REP_MATNR' repmatnr.
fill_lt_selections 'RSCOPE' rscope.
fill_lt_selections 'HRKFT' hrkft. "note 550972
fill_lt_selections 'SBUKRS' sbukrs. "note 550972
fill_lt_selections 'SHOART' shoart. "note 550972
fill_lt_selections 'SFAREA' sfarea. "note 550972
call function 'EC_PCA_SELECT_FROM_ARCHIVE'
exporting
i_selections = lt_selections[]
i_files_sequential_read = lr_files[]
importing
e_glpca = lt_glpca_archiv[]
exceptions
no_infostruc_found = 1.
if sy-subrc = 1.
message id sy-msgid type 'I' number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
clear i_glpca.
loop at lt_glpca_archiv assigning to i_glpca.
append i_glpca.
endloop.
endif.
if i_glpca[] is initial. "Info,nichts gefunden
message s000.
exit.
endif.
get texts for accounts ...............................................
sort i_glpca by kokrs racct.
loop at i_glpca assigning -racct_ktext = ls_rpcak-ktext.
endloop.
Liste mit Einzelposten geeignet sortieren.............................
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = 'Einzelposten sortieren'(p30).
if show_ref is initial.
sort i_glpca by rldnr ryear rbukrs rrcty rvers
docct docnr docln.
else.
sort i_glpca by rldnr kokrs ryear rbukrs rrcty rvers poper
refdocct refdocnr refdocln.
endif.
Berechtigungsprüfung und gemerkte Belege aufbereiten .................
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = 'Berechtigungsprüfungen'(p40).
clear: cnt_rldnr, cnt_kokrs, cnt_ryear, cnt_rvers, cnt_bukrs.
loop at i_glpca assigning .
Berechtigungscheck
perform check_repo_authority changing authorised.
if authorised is initial.
delete i_glpca.
s_message = 'X'.
zählen der Sätze ohne Berechtigung
auth_dbcount = auth_dbcount + 1.
else. "Weitere Bearbeitung nur für berechtigte Belege...
Zusätzlich merken der Anzahl der Ausprägungen
bestimmter Dimensionen
on change of -rbukrs
ct = '10'
importing
currency = hsl_curr.
endon.
externe Immobilienbezeichnung "ww/kb
on change of i_glpca-imkey.
if ( not -dabrz
I_length = 20
importing
e_empge = -konty.
endif.
CONCATENATE I_GLPCA-KONTY I_GLPCA-EMPGE INTO I_GLPCA-IMBEZ.
endif.
endon.
on change of i_glpca-dabrz.
call function 'REMD_IMKEY_TO_EMPGE'
exporting
i_imkey = i_glpca-imkey
i_dabrz = i_glpca-dabrz
i_length = 20
importing
e_empge = i_glpca-empge
e_konty = i_glpca-konty.
CONCATENATE I_GLPCA-KONTY I_GLPCA-EMPGE INTO I_GLPCA-IMBEZ.
endon.
Konvertierungsproblem mit PSP-Nummer bereinigen
if not -psppp.
endif.
endif.
Währungen in Hilfsfeldern speichern
if -ksl_curr = ksl_curr.
endif.
modify i_glpca.
endif.
endloop.
Nachricht, wenn nicht alle Einzelposten angezeigt werden.
if not s_message is initial.
message s407(km) with auth_dbcount.
endif.
EP ausgeben...........................................................
call function 'SAPGUI_PROGRESS_INDICATOR'
exporting
text = 'Einzelposten ausgeben'(p50).
t_layout-detail_initial_lines = 'X'.
t_layout-detail_popup = 'X'.
t_layout-f2code = 'PIC1'. "MICP40K039857
t_layout-get_selinfos = 'X'.
t_layout-group_change_edit = 'X'. "note 576149
perform fill_listheader.
perform fieldcat_fill.
perform spec_groups_fill.
perform events_fill. "MICP40K039857
">>MICP40K039857
call function 'K_KKB_LIST_DISPLAY'
exporting
i_callback_program = 'RCOPCA02'
i_callback_user_command = 'USR_CMD'
i_callback_top_of_page = 'TOP_OF_PAGE'
I_CALLBACK_END_OF_PAGE =
I_CALLBACK_END_OF_LIST =
i_callback_pf_status_set = 'SET_PF_STATUS'
I_CALLBACK_LAYOUT_SAVE =
I_CALLBACK_FIELDCAT_SAVE =
i_tabname = 'I_GLPCA'
is_layout = t_layout
it_fieldcat = t_fieldcat
I_FCTYPE = 'R'
IT_EXCLUDING =
it_special_groups = t_spec_groups
IT_SORT =
IS_SEL_HIDE =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
tables
t_outtab = i_glpca
exceptions
others = 1.
loop at i_glpca.
select single vbeln auart augru
into (l_vbeln, l_auart, l_augru)
from vbak where vbeln = i_glpca-aubel.
if sy-subrc = 0.
move l_auart to i_glpca-v_auart.
move l_augru to i_glpca-v_augru.
modify i_glpca.
endif.
endloop.
call function 'REUSE_ALV_GRID_DISPLAY'
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
exporting
I_INTERFACE_CHECK = ' '
i_callback_program = 'ZRCOPCA02'
i_callback_pf_status_set = 'SET_PF_STATUS'
i_callback_user_command = 'USR_CMD'
i_structure_name = 'I_GLPCA'
is_layout = t_layout
it_fieldcat = t_fieldcat
IT_EXCLUDING =
it_special_groups = t_spec_groups
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
i_default = 'X'
i_save = g_save
is_variant = g_variant
it_events = t_events
IT_EVENT_EXIT =
IS_PRINT =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
tables
t_outtab = i_glpca
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.
"<<MICP40K039857
clear i_glpca.
*& Form CHECK_REPO_AUTHORITY
Check only new auth-object K_PCA *
--> p1 text
<-- p2 text
form check_repo_authority changing authorized like authorised.
fill structure for userexit in K_PCA_RESP_AUTHORITY_CHECK
data: auth like pca_i_auth. "46a MIC check K_PCA and G_GLTP
auth-bukrs = -rrcty.
clear authorized.
check PrCtr/account/activity
call function 'K_PCA_RESP_AUTHORITY_CHECK'
exporting
i_kokrs = -racct
i_vorgn = 'REPP'
i_actvt = '28'
i_auth = auth
i_no_dialog_message = 'X'
exceptions
no_authority = 1
data_missing = 2
others = 3.
if sy-subrc = 0. "ok
check ledger/version/record type
call function 'PCA_G_GLTP_AUTH_CHECK'
exporting
rldnr = -rrcty
exceptions
no_authorisation = 1
others = 2.
if sy-subrc = 0. "ok, User is authorized
authorized = 'X'.
endif.
endif.
endform. " CHECK_REPO_AUTHORITY
*& Form INIT_VARS
Initialisieren diverser Hilfsvariablen und -tabellen *
form init_vars.
data begin of nametab occurs 80. "Tabelle mit Feldern aus der RPCA2
include structure dntab.
data end of nametab.
select single * from t000
client specified
where mandt = sy-mandt.
refresh nametab.
call function 'NAMETAB_GET'
exporting
only = 'T'
tabname = 'RPCA2'
tables
nametab = nametab.
Übernehmen der Feldnamen, die auch in der GLPCA
vorkommen.
loop at nametab where fieldname ne 'KSL_CURR'
and fieldname ne 'HSL_CURR'
and fieldname ne 'EMPGE' "ww/kb
and fieldname ne 'KONTY'. "ww/kb
move nametab-fieldname to tab_fields-name.
append tab_fields.
endloop.
fill Fields of receiver for BBS "MIC46C
call function 'RSTI_REPORT_FIELDS_FIND'
exporting
e_repid = 'RCOPCA02'
e_type = 'R'
tables
it_fields = bbs_fieldtab.
correct fieldnames
read table bbs_fieldtab with key rfield = 'PRCTR'.
if sy-subrc = 0.
bbs_fieldtab-rfield = 'RPRCTR'.
modify bbs_fieldtab index sy-tabix.
endif.
read table bbs_fieldtab with key rfield = 'PPRCTR'.
if sy-subrc = 0.
bbs_fieldtab-rfield = 'SPRCTR'.
modify bbs_fieldtab index sy-tabix.
endif.
read table bbs_fieldtab with key rfield = 'BUKRS'.
if sy-subrc = 0.
bbs_fieldtab-rfield = 'RBUKRS'.
modify bbs_fieldtab index sy-tabix.
endif.
Unicode
class cl_abap_char_utilities definition load.
clear hex00 with cl_abap_char_utilities=>minchar.
clear hexff with cl_abap_char_utilities=>maxchar.
endform. " INIT_VARS
FORM FILL_LISTHEADER *
List-Header in Abhängigkeit der selektierten Daten *
form fill_listheader.
read table i_glpca index 1.
if sy-subrc ne 0.
exit.
endif.
t_listheader-typ = 'S'.
t_listheader-key = 'Ledger '(h01).
if cnt_rldnr <= 1.
t_listheader-info = i_glpca-rldnr.
else.
t_listheader-info = '*'.
endif.
append t_listheader.
t_listheader-typ = 'S'.
t_listheader-key = 'Kostenrechnungskreis'(h02).
if cnt_kokrs <= 1.
t_listheader-info = i_glpca-kokrs.
else.
t_listheader-info = '*'.
endif.
append t_listheader.
t_listheader-typ = 'S'.
t_listheader-key = 'Buchungskreis '(h03).
if cnt_bukrs <= 1.
t_listheader-info = i_glpca-rbukrs.
else.
t_listheader-info = '*'.
endif.
append t_listheader.
t_listheader-typ = 'S'.
t_listheader-key = 'Buchungsperiode '(h04).
if cnt_poper <= 1.
t_listheader-info = i_glpca-poper.
else.
t_listheader-info = '*'.
endif.
append t_listheader.
if cnt_ryear <= 1.
t_listheader-typ = 'S'.
t_listheader-key = 'Geschäftsjahr '(h05).
t_listheader-info = i_glpca-ryear.
append t_listheader.
endif.
t_listheader-typ = 'S'.
t_listheader-key = 'Version '(h06).
if cnt_rvers <= 1.
t_listheader-info = i_glpca-rvers.
else.
t_listheader-info = '*'.
endif.
append t_listheader.
endform. "fill_listheader
*& Form FIELDCAT_FILL
*& Aufbau des Feldkataloges für den K_KKB_LIST_DISPLAY, *
*& bzw REUSE_ALV_LIST_DISPLAY, *
*& weitere Infos enthält die FktBaustein-Doku *
form fieldcat_fill.
data: i type i value 0.
refresh t_fieldcat.
Ledger
if cnt_rldnr > 1.
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'RLDNR'.
afield-no_sum = 'X'.
afield-no_out = 'X'.
afield-key = 'X'.
afield-ref_tabname = 'GLPCA'.
afield-sp_group = '1'.
append afield to t_fieldcat.
endif.
Satzart
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'RRCTY'.
afield-no_sum = 'X'.
afield-ref_tabname = 'GLPCA'.
afield-no_out = 'X'.
afield-sp_group = '1'.
append afield to t_fieldcat.
Version
if cnt_rvers > 1.
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'RVERS'.
afield-no_sum = 'X'.
afield-ref_tabname = 'GLPCA'.
afield-no_out = 'X'.
afield-sp_group = '1'.
append afield to t_fieldcat.
endif.
Periode
if cnt_poper > 1.
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'POPER'.
afield-no_sum = 'X'.
afield-ref_tabname = 'GLPCA'.
afield-no_out = 'X'.
afield-sp_group = '1'.
append afield to t_fieldcat.
endif.
Geschäftsjahr
if cnt_ryear > 1.
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'RYEAR'.
afield-no_sum = 'X'.
afield-ref_tabname = 'GLPCA'.
afield-no_out = 'X'.
afield-sp_group = '1'.
append afield to t_fieldcat.
endif.
Referenzbelegtyp
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'REFDOCCT'.
afield-ref_tabname = 'GLPCA'.
afield-key_sel = 'X'.
afield-no_sum = 'X'.
afield-sp_group = '2'.
afield-seltext_s = 'Typ'(t01).
afield-seltext_m = 'Belegtyp'(t02).
afield-seltext_l = 'Ref.Belegtyp'(t03).
afield-outputlen = 3. "Platz für die Sterne der Zwischensummen
if not show_ref is initial.
afield-key = 'X'.
else.
afield-no_out = 'X'.
endif.
append afield to t_fieldcat.
Referenzbelegnummer
add 1 to i.
clear afield.
afield-col_pos = i.
afield-fieldname = 'REFDOCNR'.
afield-ref_tabname = 'GLPCA'.
afield-key_sel = 'X'.
afield-no_sum = 'X'.
afield-sp_group = '2'.
afield-seltext_s = 'Refbeleg'(t04).
afield-seltext_m = 'Refbelegnr'(t05).
afield-seltext_l = 'Ref.Belegnummer'(t06).
if not show_ref is initial.
afield-key = 'X'.
else.
afield-no_out = 'X'.
endif.
appendHi Prabhu,
You are right, problem is with Field Catalog...
When I use FM 'REUSE_ALV_GRID_DISPLAY' it is dumping...
When i tried with FM 'REUSE_ALV_LIST_DISPLAY' it is working perfectly....
how can i use FM 'REUSE_ALV_GRID_DISPLAY' without dumping????
do i need to pass any thing in FM????
Here is the dump:
Runtime Errors MESSAGE_TYPE_X
Occurred on 12/21/2006 at 01:03:24
The current application triggered a termination with a short dump.
What happened?
The current application program detected a situation which really
should not occur. Therefore, a termination with a short dump was
triggered on purpose by the key word MESSAGE (type X).
Error analysis
Short text of error message:
Technical information about the message:
Message classe...... "0K "
Number.............. 000
User, transaction...
Language key........ "E"
Transaction......... "SE38 "
Program............. "SAPLSLVC "
Screen.............. "SAPLSLVC_FULLSCREEN 0500"
Screen line......... 3
Information on where termination occurred
The termination occurred in the ABAP program "SAPLSLVC " in "LINE_OUT_NEW_2".
The main program was "ZRCOPCA02 ".
The termination occurred in line 918 of the source code of the (Include)
program "LSLVCF01 "
of the source code of program "LSLVCF01 " (when calling the editor 9180).
Source code extract
008880 gs_roid-row_id = rs_row-index * -1.
008890 endif.
008900 gs_roid-sub_row_id = rs_row-rowtype+7(10).
008910 gs_poid-row_id = gs_roid-row_id.
008920 gs_poid-sub_row_id = gs_roid-sub_row_id.
008930 gs_poid-rowtype = rs_row-rowtype.
008940 gs_poid-index = rs_row-index.
008950 insert gs_poid into table rt_poid.
008960 endif.
008970 append gs_roid to rt_roid.
008980
008990 loop at rt_fieldcat assigning <ls_fieldcat> where tech ne 'X' and
009000 no_out ne 'X'.
009010
009020 if gflg_invisible = 'X'.
009030 if <ls_fieldcat>-do_sum is initial.
009040 clear gflg_invisible.
009050 continue.
009060 else.
009070 clear g_col_counter.
009080 clear gflg_invisible.
009090 endif.
009100 endif.
009110
009120 clear gs_lvc_data.
009130 clear g_style.
009140
009150 assign component
009160 <ls_fieldcat>-fieldname of structure rt_data to <g_field>.
009170 if sy-subrc ne 0.
> message x000(0k).
009190 endif.
009200
009210 g_col_counter = g_col_counter + 1.
009220
009230 gs_lvc_data-row_pos = r_row_counter.
009240 gs_lvc_data-col_pos = g_col_counter.
009250 gs_lvc_data-row_id = gs_roid-row_id.
009260 gs_lvc_data-sub_row_id = gs_roid-sub_row_id.
009270
009280 * Endtotal and average
009290 if rs_row-rowtype(1) ca 'T' and <ls_fieldcat>-do_sum = 'C'.
009300 * save the actual grouplevel information
009310 gs_grouplevels = rs_grouplevels.
009320 clear g_lines.
009330
009340 * get number of lines of the collect table
009350 describe table rt_data lines g_lines.
009360 * if there is only one line or the field has no references so
009370 * that only the first line has to be considered
Thanks,
fractal
null -
Changing the query on a view object
I have a view object right now, based on an entity. It is the default view object, so that means the query in the view object is straight forward, it grabs all of the attributes from the table. And there is no WHERE clause.
In reality I only want to show a finite set of rows from my table. Every time a record is changed/edited in this entity and committed, a new row in the database is created with the same information (I'm using CreateWithParams) except for a few columns.
I actually don't really have update on this table, just creation of new rows. But to the user, I want it to 'look' like they are editing something in the table.
Example:
12, 11:32,Thompson, 60 (the user edits this information in an adf table, and a new row is created in the db)
12, 11:55, Thompson, 75
I have a timestamp (see above) field in the database that is used as part of my primary key, so that I know which record is the latest.
When the VO query is run, I want the user to only see the latest row from the db.
12, 11:55, Thompson, 75
So...
I went to my VO, and I changed the WHERE query to add this:
where t1.TimeStamp = (Select MAX(t2.TimeStamp) FROM rcl.x t2 where t1.uid = t2.uid);
Now, this isn't a mysql/sql question. There's actually a better query that I'd rather run, but the VO editor doesn't allow me to change the query itself....
When I save the new WHERE to my VO, run my page again, I get the expected result (showing me only the latest records).
However, when I try and sort on the table in which my data is displayed, I am now getting ORDER BY errors.
I don't want my VO to be read-only sql based. I want to be able to update my table, so I have my VO running off of the entity.
Why doesn't the VO allow me to change the query itself? (Like do a subquery, instead of having my where clause do the work)
Why are order by errors being thrown when I sort on my adf table after changing the where clause in my view?
Hopefully I wasn't too convoluted in the explanation of my problem..
Thanks in advance,
JoelHI Joe,
Regarding your problem you can do one of the following tasks:
1- easily to tuning on your view object, I mean in the tuning page of the view you can set that only return 1 record or 2-3 record fetch not all the record.
in the order by you will order by the timestamp field and descending.
2- you can order by the timestamp descending and in the where clause only set the rownum<2 (will return the last record) you can also set rownum<5 and get the 4 last record etc.
3-editing the view query in the expert mode is not advised at all because of many consequences that you will face.
4- maybe it is not bat that you add a readonly view for the table you mentioned and every time you unpdate the entity just re-execute the read-only view.( this method maybe is good maybe is not it depends on your business logic)
Regards.
Edited by: Amir Khanof on Sep 3, 2010 11:11 PM -
While executing the query in the web template I am facing below issue
Hello SAP geniuses,
Please help me on my issue ,
while executing the query in the web template i am facing below issue.
The variable for characteristic (region) is appearing but this characteristic (region) is not appearing in the free characteristic zone but when we are executing the query with out webtemplate it is showing both variable and free characteristic
can anybody help us to identify what is the issue with the web template.
Thanks
AlokHi,
Plz check ur report and execute at the designer and take its technical name and go to RSRT. log out and log in and try..
if not check ur authorisation.
Regards....KP -
Database Error while running the query.
Hi,
While running the query in webi rich client i am having a "database error IES 10901 and WIS 10901" , it is showing that the data source name not found and default driver is not specified.
I am trying to generate report from efashion universe which is in .unx format, same client version and universe is running fine on another machine (webi rich client).
PS: The above mentioned universe is running fine on my BI launch pad, the problem is with webi rich client only.
Please help!!Hi,
Which Database your are using .
As explained by Yuvraj You need to install driver for specific database .
Ask for client or (your Database ) driver from administrator .
After installation you can see your database Driver in following path
Control Panel\System and Security\Administrative Tools\Data Sources (ODBC)
See in Drivers Tab .
If you are using oracle & client is install on your system then Check TNS Names File in NETWORK folder .
Maybe you are looking for
-
[Solved] How to install/configure GDM?
I'm trying to install and configure GDM without gnome according to these directions: https://wiki.archlinux.org/index.php/GDM Unfortunately, those directions do not resemble my system. Anyway, configuring the user to access X fails as follows: [root
-
IPad/Airplay/ itunes download vs import issue
A movie imported into itunes will play but a downloaded purchase will not, when I choose airplay on the ipad video screen in both cases it says the video is now playing on your Apple_TV. Only in the case of the itunes downloaded content it does not a
-
CiscoWorks LMS 4.0 No muestra los dispositivos
Buenas. Tengo el CiscoWorks LMS 4.0, y de un momento a otro me dejo de mostrar los dispositivos que me habia reconocido, hice de todo y nada, por ultimo desinstale e instale nuevamente y lo mismo, me reconoce los dispositivos pero no me los muestra.
-
CRM in E_BUSINESS suite
Hi, are there any products or modules for CRM in Oracle E_BUSINESS suite (Oracle APPLICATIONS)? If yes which ones ? Many thanks.
-
Hi We are using zebra printer model TLP3844-z. We are facing following problem. When we are printing only labels it is printing through SAP but as soo as we add image to that label it is not printing through SAP. But at the same time from zebra label