Concatenation in PNPCE
hi,
Can any one help me out in concatenating name fields into a string in PNPCE.
Generally ,this way we do in PNP for character field
data:begin of it_output occurs 0,
name(35) type c,
end of it_output.
move-corresponding p0002 to it_output.
concatenate p0002-vorna p0002-nachn
into it_output-name separated by ','.
How do we do in PNPCE.
Thanks
try the following piece..
report zp_pnpce.
tables: pernr.
nodes: peras.
infotypes: 0002.
data:begin of it_output occurs 0,
name(35) type c,
end of it_output.
start-of-selection.
get peras.
clear: p0002.
rp_provide_from_last p0002 space pn-begda pn-endda.
concatenate p0002-vorna p0002-nachn
into it_output-name separated by ','.
append it_output.
end-of-selection.
loop at it_output.
write: / it_output-name.
endloop.
~Suresh
Similar Messages
-
PNPCE with Time Management Urgent!!!
Hi,
I got a Project using PNPCE LDB on Time Management.They didn't mention Unicode any where in the Specs.
But, when I was trying to do a simple test program with PNPCE LDB mentioned in attributes and I didn't even check Unicode but it is giving this syntax Error.
" The program is not Unicode-compatible, according to its program attributes. "
Though I avoided this I coulldn't execute the Program.
Can anyone please help me.How to proceed with this.
Thank You,
SwapnaHi Chander,
You can read 0027 similar to how you read 0002 concatenation in PNPCE.
Since, your original question was anwsered completely by Uwe, pl mark this thread as closed by clicking on the radiobuttons to the left.
~Suresh -
PNPCE Questions Regarding GET PERSON and GET PERAS
Any information regarding the runtime performance of PNPCE? It seems it takes a lot more time than PNP? Any suggestions how to improve performance while using PNPCE?
Message was edited by:
Shuvo DattaShuvo,
I found this on SE36, documentation on PNPCE logical database:
"<u>Selection Fields of the 0000 and 0001 Infotypes</u>
<i>You can use all the standard fields of the 0000 and 0001 infotypes for selection. You can also use additional selection fields that are the concatenation of two or more of these infotype fields. If possible, do not use these concatenated fields because they do not play a significant role in the selection and can lead to long runtimes in certain circumstances. You can show and hide the required selection fields using the Selection Fields function in the application toolbar. The report
category defines a preselection of fields that should be available."</i>
Also, I suggest you read the full doco in SE36 to use this LDB in a more efficient way as far as the performance is concerned.
Hope this helps.
Reward points if useful.
Cheers,
Sougata. -
Logical Database - PNP, PCH, PNPCE
Hi Experts,
Im New to ABAP HR,
I would like to know about the logical databases we are using .
Logical Database - PNP, PCH, PNPCE, basic principles
If any body cud let me know about the differences , requiremnts , associated with these Logical databses will be much helpful for me.
Thanks
Rohini Devi
[email protected]Hi Rohini...
Global Employee Programming
Thanks
Message was edited by:
Aslam Riaz -
Logical Database PNPCE and inherited Sub Area
Hi,
I have asked this in the HR forum but no response......
I have a report using Logical Database PNPCE to find some values from a couple of info types. When I select a unit (from the 'OrgStructure' button at the top of the screen), say 111, and all its sub-units with no selections in the selection screen, I get one person displayed. This is correct and this person is in a sub-unit 3 levels down (unit 333).
I then added a selection to only display people in units with Personnel SubArea 'OTEC'. Now I get no results output. When I look in PPOME, I can see that unit 333 has Personnel SubArea 'OTEC' but it is inherited from '111'.
In PP01, unit 111 has an Account Assignment entry (Info Type 1008) but 333 does not.
Does anyone know how to report on this?
Is there a flag somewhere that tells the LDB to check for inherited units?
If not, any ideas if there is a function out there to find the superior unit for these sub-units?
Thanks.Thanks,
I am aware of that FM but how do I find the parent unit in a clever fashion?
The structure could have multiple levels e.g.
Unit 1 - Unit 2a - Unit3a......
- Unit 2b
- Unit 2c
Unit 1 is the parent and all the below units inherit from it.
The LDB is looping through an internal table with a list of the units. It finds Unit 1 but not the rest.
So, when the LDB is looking for Unit 3a, how does it know that Unit 1 is the parent?
If I use that FM, I think I would have to look for all units above it and see if there is an Info Type 1008 exists. Seems like a lot of processing for something that should be simple?
Kroc. -
ABAP - HR Logical Database PNPCE
Hi everyone,
Can anybody help me regarding lofical databse PNPCE used in HR abap.
If u have any information regarding the same,please provide.
Thanks.
SandyHi sandeep,
1. PNPCE is just like the original/last
PNP
2. PNPCE has extra fields for selection
on selection-screen.
3. It has got extra events as compared to PNP
GET PERSON, GET GROUP, and GET PERAS
4. For more info,
goto SLDB tcode.
Type PNPCE
5. choose radiobutton for 'Documentation'
press 'Display'
6. There u will find lot of information.
regards,
amit m. -
Concatenating values in one row
I need to write a function that will give me a concatenated list of all the records where gurmail_matl_code_mod like '8%'
This query is giving me those results:
GURMAIL_PIDM CODE1 CODE2
1135711
1135711 8IBD
1135711 8IBW
I want something like this 1135711 8IBW 8IBD in one row.
select
gurmail_pidm,
max(decode(rn,1,gurmail_matl_code_mod )) code1,
max(decode(rn,2,gurmail_matl_code_mod )) code2
from (select gurmail_pidm,
gurmail_matl_code_mod,
row_number() over (partition by gurmail_pidm order by gurmail_matl_code_mod desc) rn
from
(select gurmail_pidm,gurmail_matl_code_mod
from saturn.spriden,
general.gurmail
where spriden_pidm = gurmail_pidm
and spriden_change_ind is null
and gurmail_matl_code_mod like '8%'
and gurmail_pidm = 1135711
and GURMAIL_DATE_PRINTED is null
and gurmail_matl_code_mod is not null))
group by gurmail_pidm, gurmail_matl_code_mod How I can modify this query or let me know if you have other ideas..
Thank youHello
try this,
SQL> with tab as(Select 1135711 GURMAIL_PIDM, Null CODE1 from dual Union All
2 Select 1135711 GURMAIL_PIDM, '8IBD' CODE1 from dual Union All
3 Select 1135711 GURMAIL_PIDM, '8IBW' CODE1 from dual)
4 SELECT GURMAIL_PIDM || sys_connect_by_path(CODE1,' ') Result
5 FROM (SELECT GURMAIL_PIDM
6 ,code1
7 ,row_number() over(Partition BY GURMAIL_PIDM Order BY GURMAIL_PIDM) rn
8 FROM tab)
9 WHERE connect_by_isleaf = 1
10 Start With rn = 1
11 Connect BY Prior rn = rn - 1;
RESULT
1135711 8IBW 8IBDHope this helps
Christian Balz -
Docno generation in cv01n with concatenation of 3 fields in addtiaonal tab
I am struck in my program . I got a requirement for doc number generation automatically when user gives input in cv01n. there is a standard program mcdokznr which i copied and modified as per requirement . but in t-code cv01n second screen ,second tab we have additional details (characteristic values) functional consultant created 3 fields i need to concatenate these 3 fields along with docno . how should i acheieve .
i also tried badi coiped standard badi DOCUMENT_NUMBER01 into ZDOCUMENT_NUMBER0 . in method i wrote
method IF_EX_DOCUMENT_NUMBER01~DOCNUMBER_CHECK.
DATA : tdwa TYPE tdwa.
DATA: subrc TYPE inri-returncode,
number LIKE draw-doknr,
number1 LIKE draw-doknr,
new_number LIKE draw-doknr,
new_num TYPE string,
lv_docnum1 TYPE string.
CHECK sy-uname = 'MSRO'.
CHECK tcode = 'CV01'.
CHECK draw-doknr = 'TRD' OR draw-doknr = 'TST'.
CALL FUNCTION 'CV200_DB_TDWA_SELECT'
EXPORTING
pf_dokar = draw-dokar
IMPORTING
psx_tdwa = tdwa
EXCEPTIONS
not_found = 1
OTHERS = 2.
IF sy-subrc <> 0.
Implement suitable error handling here
ELSE.
if draw-dokar EQ 'TRD'.
CALL FUNCTION 'NUMBER_GET_NEXT'
EXPORTING
nr_range_nr = tdwa-inumnr
object = 'DOKUMENT'
IMPORTING
number = number
returncode = subrc
EXCEPTIONS
interval_not_found = 4
number_range_not_intern = 8
object_not_found = 12
quantity_is_0 = 16.
CONCATENATE 'ABC' '-' number INTO new_num. " IN THIS LINE HOW I NEED TO CONCATENATE THOSE 3 CHARACTERIC VALUES CREATED IN cvo1n additional data?
WRITE new_num TO number.
CONDENSE number NO-GAPS.
ENDIF.
*endif.
ENDMETHOD.dear ppl of otn!!
i need to make this concatenation because i have more tables except the subdivisions i have got each subdiv_indicator table and i have made the relationship of those indicators with the subdivisions and to recognize them properly i have chosen to concatenate charachters .just for the ease of making thing recognizable plus plz also tell me that how to refressh a sequence baecause when we delete a record form a table the sequence gets disturbed and last number still remains thatof the deleted record . how to solve this problem plz suggest.
as we know already that in min_subdiv table we have got
SUBDIV-ID SUBDIV_NAME min_id
E001 EXP ON UNIVERSITIES 0001
E002 EXP ON PRIMARY SCHOOLS 0001
E003 EXP ON SECONDARY SCHOOLS 0001
here is small picture of the data of min_subdiv_indicators for education subdivisions
subdiv_id indicator_id inidcator_name
E001 EI01 No. of primary education inst.
E002 EI02 No.of sec.edu inst.
E003 EI03 No.of professional college
E003 EI04 Literacy Rate -
Execution plan with Concatenation
Hi All,
Could anyone help in finding why concatenation is being used by optimizer and how can i avoid it.
Oracle Version : 10.2.0.4
select * from
select distinct EntityType, EntityID, DateModified, DateCreated, IsDeleted
from ife.EntityIDs i
join (select orgid from equifaxnormalize.org_relationships where orgid is not null and related_orgid is not null
and ((Date_Modified >= to_date('2011-06-12 14:00:00','yyyy-mm-dd hh24:mi:ss') and Date_Modified < to_date('2011-06-13 14:00:00','yyyy-mm-dd hh24:mi:ss'))
OR (Date_Created >= to_date('2011-06-12 14:00:00','yyyy-mm-dd hh24:mi:ss') and Date_Created < to_date('2011-06-13 14:00:00','yyyy-mm-dd hh24:mi:ss'))
) r on(r.orgid= i.entityid)
where EntityType = 1
and ((DateModified >= to_date('2011-06-12 14:00:00','yyyy-mm-dd hh24:mi:ss') and DateModified < to_date('2011-06-13 14:00:00','yyyy-mm-dd hh24:mi:ss'))
OR (DateCreated >= to_date('2011-06-12 14:00:00','yyyy-mm-dd hh24:mi:ss') and DateCreated < to_date('2011-06-13 14:00:00','yyyy-mm-dd hh24:mi:ss'))
and ( IsDeleted = 0)
and IsDistributable = 1
and EntityID >= 0
order by EntityID
--order by NLSSORT(EntityID,'NLS_SORT=BINARY')
where rownum <= 10;
Execution Plan
Plan hash value: 227906424
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
| 0 | SELECT STATEMENT | | 10 | 570 | 39 (6)| 00:00:01 | | |
|* 1 | COUNT STOPKEY | | | | | | | |
| 2 | VIEW | | 56 | 3192 | 39 (6)| 00:00:01 | | |
|* 3 | SORT ORDER BY STOPKEY | | 56 | 3416 | 39 (6)| 00:00:01 | | |
| 4 | HASH UNIQUE | | 56 | 3416 | 38 (3)| 00:00:01 | | |
| 5 | CONCATENATION | | | | | | | |
|* 6 | TABLE ACCESS BY INDEX ROWID | ORG_RELATIONSHIPS | 1 | 29 | 1 (0)| 00:00:01 | | |
| 7 | NESTED LOOPS | | 27 | 1647 | 17 (0)| 00:00:01 | | |
| 8 | TABLE ACCESS BY GLOBAL INDEX ROWID| ENTITYIDS | 27 | 864 | 4 (0)| 00:00:01 | ROWID | ROWID |
|* 9 | INDEX RANGE SCAN | UX_TYPE_MOD_DIST_DEL_ENTITYID | 27 | | 2 (0)| 00:00:01 | | |
|* 10 | INDEX RANGE SCAN | IX_EFX_ORGRELATION_ORGID | 1 | | 1 (0)| 00:00:01 | | |
|* 11 | TABLE ACCESS BY INDEX ROWID | ORG_RELATIONSHIPS | 1 | 29 | 1 (0)| 00:00:01 | | |
| 12 | NESTED LOOPS | | 29 | 1769 | 20 (0)| 00:00:01 | | |
| 13 | PARTITION RANGE ALL | | 29 | 928 | 5 (0)| 00:00:01 | 1 | 3 |
|* 14 | TABLE ACCESS BY LOCAL INDEX ROWID| ENTITYIDS | 29 | 928 | 5 (0)| 00:00:01 | 1 | 3 |
|* 15 | INDEX RANGE SCAN | IDX_ENTITYIDS_ETYPE_DC | 29 | | 4 (0)| 00:00:01 | 1 | 3 |
|* 16 | INDEX RANGE SCAN | IX_EFX_ORGRELATION_ORGID | 1 | | 1 (0)| 00:00:01 | | |
Predicate Information (identified by operation id):
1 - filter(ROWNUM<=10)
3 - filter(ROWNUM<=10)
6 - filter(("DATE_MODIFIED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "DATE_MODIFIED"<TO_DATE(' 2011-06-13
14:00:00', 'syyyy-mm-dd hh24:mi:ss') OR "DATE_CREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"DATE_CREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss')) AND "RELATED_ORGID" IS NOT NULL)
9 - access("I"."ENTITYTYPE"=1 AND "I"."DATEMODIFIED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND "I"."ENTITYID">=0 AND "I"."DATEMODIFIED"<=TO_DATE(' 2011-06-13 14:00:00',
'syyyy-mm-dd hh24:mi:ss'))
filter("I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND "I"."ENTITYID">=0)
10 - access("ORGID"="I"."ENTITYID")
filter("ORGID" IS NOT NULL AND "ORGID">=0)
11 - filter(("DATE_MODIFIED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "DATE_MODIFIED"<TO_DATE(' 2011-06-13
14:00:00', 'syyyy-mm-dd hh24:mi:ss') OR "DATE_CREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"DATE_CREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss')) AND "RELATED_ORGID" IS NOT NULL)
14 - filter("I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND (LNNVL("I"."DATEMODIFIED">=TO_DATE(' 2011-06-12 14:00:00',
'syyyy-mm-dd hh24:mi:ss')) OR LNNVL("I"."DATEMODIFIED"<=TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss'))) AND
"I"."ENTITYID">=0)
15 - access("I"."ENTITYTYPE"=1 AND "I"."DATECREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"I"."DATECREATED"<=TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss'))
16 - access("ORGID"="I"."ENTITYID")
filter("ORGID" IS NOT NULL AND "ORGID">=0)ife.entityids table has been range - partitioned on data_provider column.
Is there any better way to rewrite this sql OR is there any way to eliminate concatenation ?
ThanksWe cant use data_provider in the given query. We need to pull data irrespective of data_provider and it should be based on ENTITYID.
Yes table has only three partitions...
Not sure issue is due to concatenation....but we are in process to create desired indexes which will help for this sql.
In development we have created multicolumn index and below is the execution plan.....Also in development it takes just 4-5 seconds to execute. But in production it takes more than 8-9 minutes.
Below is the execution plan from Dev which seems to perform fast:
Execution Plan
Plan hash value: 3121857971
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop |
| 0 | SELECT STATEMENT | | 1 | 57 | 353 (1)| 00:00:05 | | |
|* 1 | COUNT STOPKEY | | | | | | | |
| 2 | VIEW | | 1 | 57 | 353 (1)| 00:00:05 | | |
|* 3 | SORT ORDER BY STOPKEY | | 1 | 58 | 353 (1)| 00:00:05 | | |
| 4 | HASH UNIQUE | | 1 | 58 | 352 (1)| 00:00:05 | | |
| 5 | CONCATENATION | | | | | | | |
|* 6 | TABLE ACCESS BY INDEX ROWID | ORG_RELATIONSHIPS | 1 | 26 | 3 (0)| 00:00:01 | | |
| 7 | NESTED LOOPS | | 1 | 58 | 170 (1)| 00:00:03 | | |
| 8 | PARTITION RANGE ALL | | 56 | 1792 | 16 (0)| 00:00:01 | 1 | 3 |
|* 9 | TABLE ACCESS BY LOCAL INDEX ROWID| ENTITYIDS | 56 | 1792 | 16 (0)| 00:00:01 | 1 | 3 |
|* 10 | INDEX RANGE SCAN | IDX_ENTITYIDS_ETYPE_DC | 56 | | 7 (0)| 00:00:01 | 1 | 3 |
|* 11 | INDEX RANGE SCAN | EFX_ORGID | 2 | | 2 (0)| 00:00:01 | | |
|* 12 | TABLE ACCESS BY INDEX ROWID | ORG_RELATIONSHIPS | 1 | 26 | 3 (0)| 00:00:01 | | |
| 13 | NESTED LOOPS | | 1 | 58 | 181 (0)| 00:00:03 | | |
| 14 | PARTITION RANGE ALL | | 57 | 1824 | 10 (0)| 00:00:01 | 1 | 3 |
|* 15 | INDEX RANGE SCAN | UX_TYPE_MOD_DIST_DEL_ENTITYID | 57 | 1824 | 10 (0)| 00:00:01 | 1 | 3 |
|* 16 | INDEX RANGE SCAN | EFX_ORGID | 2 | | 2 (0)| 00:00:01 | | |
Predicate Information (identified by operation id):
1 - filter(ROWNUM<=10)
3 - filter(ROWNUM<=10)
6 - filter("RELATED_ORGID" IS NOT NULL AND ("DATE_CREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"DATE_CREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss') OR "DATE_MODIFIED">=TO_DATE(' 2011-06-12 14:00:00',
'syyyy-mm-dd hh24:mi:ss') AND "DATE_MODIFIED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss')))
9 - filter("I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND "I"."ENTITYID">=0)
10 - access("I"."ENTITYTYPE"=1 AND "I"."DATECREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"I"."DATECREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss'))
11 - access("ORGID"="I"."ENTITYID")
filter("ORGID" IS NOT NULL AND "ORGID">=0)
12 - filter("RELATED_ORGID" IS NOT NULL AND ("DATE_CREATED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"DATE_CREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss') OR "DATE_MODIFIED">=TO_DATE(' 2011-06-12 14:00:00',
'syyyy-mm-dd hh24:mi:ss') AND "DATE_MODIFIED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss')))
15 - access("I"."ENTITYTYPE"=1 AND "I"."DATEMODIFIED">=TO_DATE(' 2011-06-12 14:00:00', 'syyyy-mm-dd hh24:mi:ss') AND
"I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND "I"."ENTITYID">=0 AND "I"."DATEMODIFIED"<TO_DATE(' 2011-06-13 14:00:00',
'syyyy-mm-dd hh24:mi:ss'))
filter("I"."ISDISTRIBUTABLE"=1 AND "I"."ISDELETED"=0 AND (LNNVL("I"."DATECREATED">=TO_DATE(' 2011-06-12 14:00:00',
'syyyy-mm-dd hh24:mi:ss')) OR LNNVL("I"."DATECREATED"<TO_DATE(' 2011-06-13 14:00:00', 'syyyy-mm-dd hh24:mi:ss'))) AND
"I"."ENTITYID">=0)
16 - access("ORGID"="I"."ENTITYID")
filter("ORGID" IS NOT NULL AND "ORGID">=0)Thanks -
Concatenating into a single text field multiple choices from a dialog window
I present a user with a form which contans a list from where to chose a few items.
I need to take what he puts in there, and convert it into a string to pass it to a query... They click to select, and click to deselect, and I have to show in the underlying form's parameter list the items he has chosen in this form:
joe,frank,rizzo
if he clicks again on rizzo, the list (and he can see it) would show:
joe,frank
Thats the first part. Now, I have to pass three or more of these strings to a library procedure to do 'recheck' or validation, against the same tables, etc,). I don't want to put the loop in the library... but if I have to, I can only bring a single variable text string into it. Which means, I have to move each of the various strings of choices into the variable which goes to the library procedure.
Complex enough?
I have about three days to figure it out.
Summary: 1. Concatenating the choices.
2. sending different values into the library procedure, using the same variable in the library procedure.
Thanks in advance!
Nick
nullTry something like:
// Get field values
var first_name = getField("FirstName").value;
var middle_name = getField("MiddleName").value;
var last_name = getField("LastName").value;
// Build full_name string
var full_name = "Mr. " + last_name + ", " + first_name + middle_name;
// Set this field's value equal to full_name
event.value = full_name;
This is intended to be the custom calculation script fot the "FullName" field.
Refinements might be to have the user specify the title (Mr, Mrs, Dr., etc.) and handle missing values properly, but this should get you started.
If you will be doing much scripting, you should get the Acrobat JavaScript Reference.
George -
Bursting using a Concatenated Data Source
Greetings,
I am trying to burst a report using a concatenated data source. I have a bursting SQL query set up that works fine, but I am unsure how to handle the "Split By" option. I have a data model that pulls data from multiple queries, like this:
DETAILS_A
select * from table_a
where payee_id in (:p_payee_id)
DETAILS_B
select * from table_b
where payee_id in (:p_payee_id)
So, if I choose to "Split By" Details_A_Row/Payee_ID, then the data from Details_A is split appropriately, but the reports I generate don't split the information from Details_B properly. I end up with reports where one payee has information for another payee from the Details_B data source. How can I specify that the report should also split/filter the info from Details_B?
To put it another way, what I'd really like to do is go through a list of parameters (payee IDs in this example) and generate a report for each parameter. Is Bursting the most effective way to do this?
From searching the forums, it seems like I might be able to accomplish this using Data Templates as my Data Model instead of SQL Queries. Am I on the right track with that? If so, you guys have any helpful links on how to create Data Templates?
I am using BI Publisher version 10.1.3.4
Any help is appreciated!
MartinFor data template samples, check the following out and then download the zip file (you may not be able to run the reports, but you can view the code)
http://blogs.oracle.com/xmlpublisher/2009/06/data_template_progression.html
Thanks,
BIPuser -
OBIEE Group By on 2 facts and concatenated columns from different dimensions
Hi
I have a different kind of problem involving 2 fact tables with different dimensional attributes.
Fact 1 has Dim Attributes ( Cust,Facility )
Measure - Gross Amount
Fact2 has Dim attributes (Cust,Facility and Risk Group )
Measure : Exposure Amount
Since we have 2 facts with different dimensions,
to exclude the 'Risk Group' dimension column from the group by for the Fact1,
we set the 'Gross Amount' measure to total level (Risk Group Dimension ) in contents tab.
So the values from both the fact tables appears in the same report correctly.
But in the same report we have another requirement where the rating column from the customer dimension has to be concatenated with the ratings column in the facility dimension.
We have to concatenate customer.rating with the facility.rating and display it in the report.
when we just pull the individual columns from the dimensions into the report it works fine.
But when we try to concatenate the 2 columns and show it in the report,
the concatenated column does not appear in the select or the group by in the SQL Fact2.( Generated by OBIEE )
The other fact1 has the concatenated column in the select as well as the group by clause ( Generated by OBIEE )
As a result the report shows the concatenated values only for the results from the Fact1. But the results from Fact2 does not have the concatenated column values.
The report should look like the below:
Custor.Name, Customer.Id, Facility.Name, Facility.Id, Customer.Rating/Facility.Rating, Risk Group, Gross Amount, Exposure Amount
=========== ========= =========== ========= ======================== ========= =========== ===============
JPMC 123 GROSS 123 08/10 LNL 45,000 25,000
CLAIRE 456 NET 456 07/10 RNK 50,000 30,000
Thanks,
ChandraAs suggested you really want to move your none-aggregated fact attributes to a logical dimension (using the same physical table as the logical fact). Map this in the BMM layer as a snowflake, Place a hierarchy on this dimension with (at minimum) Total -> Detail levels, then on the other fact table you want to include in the report, set the content level on your other fact measures to the 'Total' level for your new logical Dim and it will allow them to be present in the same report.
-
Data Concatenation - Looking to have result in the Group header
Dear all,
Few months ago, I try to concatenate cells under a Group,
I succeed using the formula gave by Raghavendra
Initialize:
whileprintingrecords;
stringvar i:="";
Place the above formula in group header and suppress group header section.
evaluate:
whileprintingrecords;
stringvar i;
i:=i", "name field;
Place the above formula in detail section and suppress the details section.
display:
whileprintingrecords;
stringvar i;
country field" - "i;
Place the above formula in group footer and right click go to format field and check the option "can grow" in common tab.
My today issues is that I'm still looking for concatenation but I need it in the Header of the Group, not in the footer
As far as I understood
- Crystal Report is reading line by Line, so I can't retrieve the value in the Header before the value are calculate.
- Moreover I've issue on initialize the value
I thougth an GlobalVar Array can work, but I can't find the way to do it
My request is, I've have this DataSet
Paris | Louvre
Paris | Eiffel
Sydney | Opéra
I'm looking Group on City to have in the Header, the value concatened
Paris | Louvre, Eiffel
Sydney | Opéra
Thanks in advance
Edited by: Alexandre VANNIER on Dec 2, 2008 2:09 PMif i have manual running totals that need to display in the header i do the following
i create the group - ie- jobid
i either insert a sub group below or create a 2nd group with the same field
then i create a 3rd group with the same field
i place my reset in the 1st group
calc in 2nd
display in 3rd -
How to pass a default value in selection screen of logical database pnpce
Dear All,
Can any one tell me how to pass a default value in selection screen of logical database pnpce .
Regards
Rakesh SinghHi Rakesh,
Go to SE36 (logical database Builder).First enter PNPCE in Logical Database and press documentation,here you will get the details of exactly what is PNPCE and how it works.After that select selections in subojects in se36 only and enter display ,there you have the include from where you acn get the idea.
Regards,
Rahul -
Error about using a concatenated calculated column in a SSAS Tabular model
Hi,
in a my tabular model I've added in a dimension table a calculated column concatenating a code and a description. The code is used to create a relation between a fact table and this dimension table.
When I try to use the tabular model inside Excel and select the concatenated column as a filter I've this error message:
I've tried to recalculate some times the tabular database after the deployment of the model changes and I've tried to run a full process of the entire database but any results.
Any suggests to me in order to solve this issue, please?
ThanksHi, I've solved. The concatenate formula was with "+" operator and not "&".
But during the column creation I've any errors also if the model in SSDT was empty.
Bye
Maybe you are looking for
-
How can i create a new password?
I forgot my password, how can i create a new one?
-
Hi, I run BCALV_TREE_SIMPLE_DEMO in order to know how it is working but I have one question: if I want to download the list to excel, how do I add a button and the functionality to do this? Thanks in advance, Cristian
-
Hi, I am new to solaris and I have installed Solaris 10 on a V880 SPARC server and have downloaded the following files: 10_sparc_0508_patchbundle_chunk1.zip 10_sparc_0508_patchbundle_chunk2.zip 10_sparc_0508_patchbundle_chunk3.zip 10_sunAlert_patch_c
-
Init-Routine in Shared Library not executed
I have tried to write a Shared Library with an init- and fini-routine. I have used the #pragma init resp. #pragma fini statements to specify the names of the functions to be executed. But when loading my library nothing happens. The init function is
-
NullPointerException & java file missing!
I have a JSP which gets the following error, the problem is that the WEBLOGIC GENERATED JAVA FILE IS NOT THERE! When I search my hard drive, the _somethingwrongerrorpage.java file is NOT FOUND!!!!! The jsp code is at the