Compound key value
Hi,
I define "Order No" as Master data InfoObject and compounding as "ORDTYPE"
In my query when i select ORDER NO i am also seeing ORDTYPE VALUE
For Example: Order No: 12345, Order Type : S4
When I select Order no in my report the output I am getting : 12345/S4
But I only want :12345
How can we achvive this
I can not filter ORDTYPE because If I do I can't see ordertype.
I want ORDERTYPE is diplaying as "S4" that is correct.
when i select ORDERNO i am getting 12345/S4 because of compounding key.
Example:
ORDERNO ORDERTYPE
12345/S4 S4
I want like this
ORDERNO ORDERTYPE
12345 S4
How can we achive this result?
Similar Messages
-
Hi,
I define ITEM NO as main infoobject and compound key fields as Branch, Location, lotno, and fiscal year. When I select ITEM NO in the report I am getting all key field values.For example sample data: BRAN1/LOC1/LOT1/200604/ITEM01 but I want only ITEM01 as output. What I did I put the Branch, Location, Lot no, fiscal year under Filter still its giving whole key values when I select ITEMNO. Can anybody have any idea?
Thanks in advance
RandyHi,
this is the usual behaviour for compunded characteristics.
If you drilldown the coumpounding chars of your ITEM, they will disappear from the display.
One nice way to avoid this behaviour in to add a navigational attr in your char which you'll populate with the same value then the value populating your ITEM.
By doing this you'll be able to see your ITEM value "detached" of its coumpounding characteristics values...
hope this helps...
Olivier. -
Display compounded InfoObject value in BEX selection screen
Hi people,
Problem in 7.0
I have Costcenter compounded with Plant and I am using Costcenter for Selections in the BEx varaible screen.
After running the report, in the selection screen value help, only the value of Costcenter is displayed, not the compounded value (So it becomes very difficult to identify from which plant the costcenter is from)
What should I do so that the User sees as Plant/Costcenter in the Value help?
Problem in 3.5
The above issue is not there in 3.5, but.......
I select COSTCENTER X from PLANT A and execute the report. In the report output, I do not see the records only for COSTCENTER X from PLANT A, but for COSTCENTER X from all Plants
why is this? Is it how this works or is it a bug?
Please help. I appreciate your assistance very much.
Thanks,
ShameemHey there,
Please understand the behaviour of compounded keys from the below notes:
1111632 Problem with text display in BEx Query Designer
1080863 FAQ: Input helps in Netweaver BI
541253 Restricting characteristics with compound characteristics
575563 Selecting filter values for compound characteristics
Hope this can help,
Diego Seben -
Hi, just a small question on how the compound keys work.
I'm developing an app using EclipseLink2.0. If I try to build an entity with a compound key composed by primitive types (such as String, int, java.sql.Date...) all is fine, but when I put in it a user-made Entity i get this error:
Exception [EclipseLink-7149] (Eclipse Persistence Services - 2.0.0.v20091127-r5931): org.eclipse.persistence.exceptions.ValidationException
Exception Description: The composite primary key attribute [idnomeCategoria] of type [null] on entity class [class entities.Sottocategoria] should be of the same type as defined on its primary key class [entities.SottocategoriaPK]. That is, it should be of type [entities.Categoria].where the entities are the following:
@Entity
@IdClass(SottocategoriaPK.class)
@Table(name = "sottocategoria")
public class Sottocategoria implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private Categoria idnomeCategoria;
@Id
private String nomeSottocategoria;
public Sottocategoria() {
public Sottocategoria(Categoria idnomeCategoria, String nomeSottocategoria) {
this.idnomeCategoria = idnomeCategoria;
this.nomeSottocategoria = nomeSottocategoria;
public Categoria getIdnomeCategoria() {
return idnomeCategoria;
public void setIdnomeCategoria(Categoria idnomeCategoria) {
this.idnomeCategoria = idnomeCategoria;
public String getNomeSottocategoria() {
return nomeSottocategoria;
public void setNomeSottocategoria(String nomeSottocategoria) {
this.nomeSottocategoria = nomeSottocategoria;
public class SottocategoriaPK implements Serializable {
private Categoria idnomeCategoria;
private String nomeSottocategoria;
public SottocategoriaPK() {
public SottocategoriaPK(Categoria idnomeCategoria, String nomeSottocategoria) {
this.idnomeCategoria = idnomeCategoria;
this.nomeSottocategoria = nomeSottocategoria;
public Categoria getIdnomeCategoria() {
return idnomeCategoria;
public void setIdnomeCategoria(Categoria idnomeCategoria) {
this.idnomeCategoria = idnomeCategoria;
public String getNomeSottocategoria() {
return nomeSottocategoria;
public void setNomeSottocategoria(String nomeSottocategoria) {
this.nomeSottocategoria = nomeSottocategoria;
@Override
public int hashCode() {
int hash = 0;
hash += (idnomeCategoria != null ? idnomeCategoria.hashCode() : 0);
hash += (nomeSottocategoria != null ? nomeSottocategoria.hashCode() : 0);
return hash;
@Override
public boolean equals(Object object) {
if (!(object instanceof SottocategoriaPK)) {
return false;
SottocategoriaPK other = (SottocategoriaPK) object;
if ((this.idnomeCategoria == null && other.idnomeCategoria != null) || (this.idnomeCategoria != null && !this.idnomeCategoria.equals(other.idnomeCategoria))) {
return false;
if ((this.nomeSottocategoria == null && other.nomeSottocategoria != null) || (this.nomeSottocategoria != null && !this.nomeSottocategoria.equals(other.nomeSottocategoria))) {
return false;
return true;
@Override
public String toString() {
return "entities.SottocategoriaPK[idnomeCategoria=" + idnomeCategoria + ", nomeSottocategoria=" + nomeSottocategoria + "]";
@Entity
@Table(name = "categoria")
public class Categoria implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Basic(optional = false)
@Column(name = "nomeCategoria", nullable = false, length = 70)
private String nomeCategoria;
public Categoria() {
public Categoria(String nomeCategoria) {
this.nomeCategoria = nomeCategoria;
public String getNomeCategoria() {
return nomeCategoria;
public void setNomeCategoria(String nomeCategoria) {
this.nomeCategoria = nomeCategoria;
@Override
public int hashCode() {
int hash = 0;
hash += (nomeCategoria != null ? nomeCategoria.hashCode() : 0);
return hash;
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof Categoria)) {
return false;
Categoria other = (Categoria) object;
if ((this.nomeCategoria == null && other.nomeCategoria != null) || (this.nomeCategoria != null && !this.nomeCategoria.equals(other.nomeCategoria))) {
return false;
return true;
@Override
public String toString() {
return "entities.Categoria[nomeCategoria=" + nomeCategoria + "]";
EntityManagerFactory emf=Persistence.createEntityManagerFactory("tryPU");
EntityManager em = emf.createEntityManager();
Categoria c = new Categoria("prova");
Sottocategoria s = new Sottocategoria(c,"riprova");
em.getTransaction().begin();
em.persist(c);
em.persist(s);
em.getTransaction().commit();
em.close();If, instead of Categoria entity as part of the compound class, I put
String nomeCategoria;all is fine.
I wasn't able to figure out why... or where's the error.
Any suggestion on how to proceed?
My provvisional solution then is to use simple keys by putting an extra field as key of the entity (Sottocategoria in this case). Is that fine?
Thanks for the answers!
Edited by: muganz on Feb 25, 2010 10:37 PMThe JPA specification does not allow the use of Entities as PKs. In the specification the PKs must be primitive values or PK classes derived from related entites.
--Gordon -
CMR 1:M with compound keys?
Pardon a possible repost, my original post disappeared.
I've got two tables with compound PKs. Does OC4J 9.0.3 support CMR for CMP beans with compound keys?
Thanks!April,
I built a simple CMR Employee -> TimeCards (empno, timecardno as composite PK)
Here is the orion-ejb-jar.xml that demonstrates the ampping:
<?xml version = '1.0' encoding = 'windows-1252'?>
<!DOCTYPE orion-ejb-jar PUBLIC "-//Evermind//DTD Enterprise JavaBeans 1.1 runtime//EN" "http://xmlns.oracle.com/ias/dtds/orion-ejb-jar.dtd">
<orion-ejb-jar>
<enterprise-beans>
<entity-deployment name="Employee" data-source="jdbc/OracleDS" table="EMP">
<primkey-mapping>
<cmp-field-mapping name="empno" persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
</primkey-mapping>
<cmp-field-mapping name="empno" persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
<cmp-field-mapping name="ename" persistence-name="ENAME" persistence-type="VARCHAR2(10)"/>
<cmp-field-mapping name="job" persistence-name="JOB" persistence-type="VARCHAR2(9)"/>
<cmp-field-mapping name="mgr" persistence-name="MGR" persistence-type="NUMBER(4)"/>
<cmp-field-mapping name="hiredate" persistence-name="HIREDATE" persistence-type="DATE"/>
<cmp-field-mapping name="sal" persistence-name="SAL" persistence-type="NUMBER(7,2)"/>
<cmp-field-mapping name="comm" persistence-name="COMM" persistence-type="NUMBER(7,2)"/>
<cmp-field-mapping name="deptno" persistence-name="DEPTNO" persistence-type="NUMBER(2)"/>
<cmp-field-mapping name="timecard_empno">
<collection-mapping table="TIMECARDS">
<primkey-mapping>
<cmp-field-mapping>
<entity-ref home="Employee">
<cmp-field-mapping persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
</entity-ref>
</cmp-field-mapping>
</primkey-mapping>
<value-mapping type="debu.cmr3.TimecardLocal">
<cmp-field-mapping>
<entity-ref home="Timecard">
<cmp-field-mapping>
<fields>
<cmp-field-mapping name="empno" persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
<cmp-field-mapping name="timecardno" persistence-name="TIMECARDNO" persistence-type="NUMBER(10)"/>
</fields>
</cmp-field-mapping>
</entity-ref>
</cmp-field-mapping>
</value-mapping>
</collection-mapping>
</cmp-field-mapping>
</entity-deployment>
<entity-deployment name="Timecard" data-source="jdbc/OracleDS" table="TIMECARDS">
<primkey-mapping>
<cmp-field-mapping>
<fields>
<cmp-field-mapping name="empno" persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
<cmp-field-mapping name="timecardno" persistence-name="TIMECARDNO" persistence-type="NUMBER(10)"/>
</fields>
</cmp-field-mapping>
</primkey-mapping>
<cmp-field-mapping name="timecardno" persistence-name="TIMECARDNO" persistence-type="NUMBER(10)"/>
<cmp-field-mapping name="workhours" persistence-name="WORKHOURS" persistence-type="NUMBER(4,2)"/>
<cmp-field-mapping name="timecarddate" persistence-name="TIMECARDDATE" persistence-type="DATE"/>
<cmp-field-mapping name="employee_empno">
<entity-ref home="Employee">
<cmp-field-mapping persistence-name="EMPNO" persistence-type="NUMBER(4)"/>
</entity-ref>
</cmp-field-mapping>
</entity-deployment>
</enterprise-beans>
<assembly-descriptor>
<default-method-access>
<security-role-mapping impliesAll="true" name="<default-ejb-caller-role>"/>
</default-method-access>
</assembly-descriptor>
</orion-ejb-jar> -
BroadcastOutputAdapter: monotonic compound keys - possible?
I'm trying to architect my app to use BroadcastOutputAdapter.
I'd like to use compound keys to be able to identify events based on timestamp and a custom property. I'm also trying to use monotonic approach as my key is based on a timestamp and have only a custom value to differentiate one from the other (like the accountId sample from the cep developer guide).
However, when implementing the key based on the "Example 21–25" of CEP Dev Guide, I got an error saying my compound key class must implement Comparable.
That's where my doubt is: how can I implement comparable and still take into account the custom property in the comparison as the comparable is just about bigger, smaller, and equal? Seems that if I use only the timestamp value, my custom property would be ingored and I would compare just based on the timestamp and I could end up comparing timestamp from key of accountId = A with timestamp from key of accountid = B.
Thanks,
DanielHi Junger,
The point is that I may have the following events being output:
ID TS
A 9
A 10
B 7
B 8
In this case, I'm interested in all messages for A and B however, seems to me (please, correct me if I'm wrong) that if I compare only the timestamp, I'll consider timestamps 7 and 8 to be smaller than the timestamps 9 and 10, however they are output for different IDs and the events for ID B would be pruned and I can't afford that.
Am I right?
Thanks
Daniel -
I have written a FM that was included in a user exit. The purpose of my user exit is to restrict certain Accounts that my Query uses. The problem that I run into is that the Account is a numerical value which is NOT a key. For example, I could have one account that exists in two different reporting divisions such as Africa and Asia and might not want to restrict Africa. If I don't take into consideration the divison, then I will be eliminating required Accounts. I thought about creating a seperate user exit for the reporting division but then I might run into the problem of eliminating certain Accounts that are associated with that division. I'm thinking that If I create another user exit for the division, then I will somehow have to link the two(not sure how this would work). Secondly, the divison and account is a compounded key in my InfoCube. There is not InfoObject that holds the compounded key so I can not create a variable of this type.
I'm not sure what would be the best way to solve this problem so any input you can give is greatly appreciated.
Thanks,
NyrvoleHi Reddy,
This user exit can creating & activating in project by using CMOD Transaction code.
AFAR0002 is Enhanc for external determination of depreciation.
Thank you
Anil -
Problem with % signs in key value url parameter pairs
Hi,
Tomcat 5.5.9
Java Version 1.5
I'm having a little difficulty passing a certain key value pair via a URL to the processing component of my web application.
If I submit a value for lets say parameter 'product_name' and that value starts with a % sign then the value is passed to my processing component as 'null' if I remove the % sign the value is correctly received.
Anyone come accross this on a Tomcat server?
The data has to be tagged onto the URL rather than as a form 'Post', as it is used to create and populate a popup window.
Thanks in advance.So the % is used in URLs to mark certain escape sequences, so when you put it in you value, it thinks that the value is actually an escape sequence, and probably translates poorly on the opposite side.
You will actually need to use the escape sequence for the % sign to get it work correctly. I don't recall the actual escape value, but:
If you use JSTL to put together the URL for you, you shouldn't have a problem, the values will be escapes:
<c:url var="popupAddress" url="http://www.mydomain.com/myapp/mupage.jsp">
<c:param name="product_name" value="%Whatever"/>
</c:url>
<script type="text/javascript">
document.open("<c:out value="${popupAddress}"/>","Popup");
</script> -
SSAS report action to pass multi-value list of dimention key values to a SSRS report parameter
This was originally posted on StackOverflow and suggested I try here as well.
I want to create a report action in an SSAS OLAP cube that generates a list of formatted values to pass into an SSRS report parameter that accepts a multi-valued parameter list. This would be applied at the
cell level in the SSAS action. I have found a solution that gets me most of the way:
How to Pass Multiple Values from an SSAS Report Drill Through Action to an SSRS Multi-Value Parameter, but not quite. The action does appear in Excel and works
if I run the action from a cell that is at or below the dimension attribute I am generating the list for, in this case,
Account Key.
Below is a link to a screen capture (unable to embed it due to lack of reputation) showing the action and dimension structure in Excel. The action works as long as I run it at the
Account Key level or below. I want to be able to run it at higher levels, such as
Account Major and still have it generate all then related Account Key values for the SSRS report parameter. Running it at the higher
Account Major level does not trigger the report to run.
Excel Action Screen Shot:
http://i.stack.imgur.com/QCGSp.png
Below is the MDX I am using to generate the value for the report parameter:
UrlEscapeFragment(
GENERATE(
DESCENDANTS(
[Account].[Account Key].CurrentMember,
[Account].[Account Key].[Account Key]
[Account].[Account Key].CURRENTMEMBER.Name,
"&rp:Account="
I am hoping that I can somehow modify the MDX above to make it return all the
Account Keys for any attribute of the Account dimension when ran from any measure cell, not just when ran at self and children of
Account Key in the pivot table.
Also, if it helps, I can execute the following MDX query on the cube and get the results I am looking for.
WITH MEMBER [Measures].[Account Key List] as
GENERATE(
DESCENDANTS([Account].[Account].CurrentMember, [Account].[Account].[Account]),
[Account].[Account].CURRENTMEMBER.NAME,
"&rp:Account=")
SELECT {[Measures].[Account Key List]} on 0,
([Account].[Account Company Number].[Account Company Number],[Account].[Account Major].[Account Major]
) on 1
FROM [Company 10 Action Demo]
Below are partial results:
10.116&rp:Account=10.116.010
10.117&rp:Account=10.117.010&rp:Account=10.117.020
10.120&rp:Account=10.120.005&rp:Account=10.120.006&rp:Account=10.120.010&rp:Account=10.120.020&rp:Account=10.120.030&rp:Account=10.120.040&rp:Account=10.120.050&rp:Account=10.120.060&rp:Account=10.120.380&rp:Account=10.120.999
10.123
Questions
Any ideas what I might need to do to get Account Key to be returned for any attribute of the
Account dimension?
Would I possibly have to alter my Account dimension in the cube to get this to work?
Thanks in advance.
Edit 1 - Adventure Works Cube Version
I was unable to get the suggested answer with the "Exists" function to work. To better demonstrate this issue, I have recreated it using the Adventure Works Cube.
I will focus on the Customer dimension, specifically the Customer and
Education attributes. I created a report action called Test Report Action. Below is the XML created for it in the cube.
<Action xsi:type="ReportAction" dwd:design-time-name="f35ad5ee-5167-4fb8-a0e0-0a74cc6e81c6">
<ID>Report Action 1</ID>
<Name>Test Report Action</Name>
<TargetType>Cells</TargetType>
<Target></Target>
<Type>Report</Type>
<ReportServer>SQLSERVER</ReportServer>
<Path>ReportServer?/Test Report</Path>
<ReportParameters>
<ReportParameter>
<Name>Test Customer Existing</Name>
<Value>UrlEscapeFragment(
GENERATE(
EXISTING DESCENDANTS(
[Customer].[Customer].CurrentMember,
[Customer].[Customer].[Customer]
[Customer].[Customer].CURRENTMEMBER.Name,
"&rp:Customer="
)</Value>
</ReportParameter>
</ReportParameters>
<ReportFormatParameters>
<ReportFormatParameter>
<Name>rs:Command</Name>
<Value>Render</Value>
</ReportFormatParameter>
<ReportFormatParameter>
<Name>rs:Renderer</Name>
<Value>HTML5</Value>
</ReportFormatParameter>
</ReportFormatParameters>
</Action>
Below are the steps to re-create the issue.
Connect to the cube in Excel
Add dimension Customer -> More Fields -> Customer
Add measure Internet Sales -> Internet Sales Amount
Right-click Internet Sales Amount cell, select "Additional Actions" -> "Test Report Action" and see customer values created for URL
When the action is ran at this point with Customer, I see the values created in the URL shown message box (since there is no SSRS report server at location specified).
Now the part I'm unable to resolve
Remove the Customer dimension and add Customer -> Demographic -> Education
Right-click Internet Sales Amount cell, select "Additional Actions" -> "Test Report Action"
Nothing happens. If I ran the action on the cell next to "Bachelors", I would want it to build up all the list of all the "Customers" that make up the "Bachelors" in the
Customer dimension as part of the report parameter. If no attributes where used in the cube from the
Customer dimension for that cell, then I would like it to return "All Customers", or something similar to show that all customers are included in the aggregations.
I am not too MDX savvy, thus far. I think I need to somehow join the
Customers to Internet Sales Amount in the Generate function portion. I have tried several different combinations of the
Customer dimension and Internet Sales Amount, along with various functions to see if I could get this to work with no success. I am hoping that someone more knowledgeable the me will have a solution. If you need more details,
please ask and I will provide them.Simon,
Thanks for you help with this. This morning I found a workaround. Below describes what that is.
What I ended up doing was getting a list of values from a degenerate dimension that I could use to pass to SSRS to get a list of transactions for a report. Below is how I did this, in relation to the Adventure Works cube using the degenerate dimension
Internet Order Details.
WITH MEMBER [Measures].[Order Param List] AS
GENERATE(
EXISTS([Internet Sales Order Details].[Sales Order Number].[Sales Order Number].Members, ,
"Internet Sales"),
[Internet Sales Order Details].[Sales Order Number].CurrentMember.Name,
"&rp:OrderNum=")
SELECT {[Measures].[Order Param List], [Measures].[Internet Sales Amount]} ON 0
,([Date].[Calendar].[Date]) ON 1
FROM [Adventure Works]
This will get a list of Sales Order Number in a text string, separated by "&rp:OrderNum=" for each measure of
Internet Sales. This would allow me to create an SSRS report to bring back detail information for each
Sales Order Number. Below are some sample results.
May 16, 2007 SO50493&rp:OrderNum=SO50494&rp:OrderNum=SO50495&rp:OrderNum=SO50496&rp:OrderNum=SO50497&rp:OrderNum=SO50498&rp:OrderNum=SO50499&rp:OrderNum=SO50500 $12,157.80
May 17, 2007 SO50501&rp:OrderNum=SO50502&rp:OrderNum=SO50503&rp:OrderNum=SO50504&rp:OrderNum=SO50505&rp:OrderNum=SO50506&rp:OrderNum=SO50507&rp:OrderNum=SO50508 $13,231.62
May 18, 2007 SO50509&rp:OrderNum=SO50510 $4,624.91
With this, I can then create a Report Action in SSRS with a Parameter Value of
UrlEscapeFragment(
GENERATE(
EXISTS([Internet Sales Order Details].[Sales Order Number].[Sales Order Number].Members, ,
"Internet Sales"),
[Internet Sales Order Details].[Sales Order Number].CurrentMember.Name,
"&rp:OrderNum=")
The way I was going about it before was flawed, as I was trying to get a list of the granular values from each dimension used to build the measure value and pass each one of those as separate parameters. I just needed to set something unique for each fact
measure transaction that represents the value and uses that in a query parameter for the SSRS report. -
Crystal Report with Compound Key
Hi,
I have Characteristic with Compound Key in SAP BW 7.0. This Characteristic use to store the Purchase Order Item Line. The Compound Key is the Purchase Order Document.
So I will have the following fields created for this Characteristic:
Compound Key (Purchase Order Document) 5600001982, Purchase Order Item Line 10
I created a Query for this Characteristic and I have the following as result:
10 ...
20 ...
30 ...
All works fine.
Now I created the Crystal Report from this Query. When I display this Characteristic in Crystal Report, I have the following:
5600001982/10
5600001982/20
5600001982/30
Is this a bug or Crystal not support the Compound Key?
Please advise, thank you.Hello,
Did you get this resolved.
Were you able to display characteristics in Crystal without the compounding characteristic.
Thanks. -
Crystal Report and InfoObject with Compound Key
Hi,
I have Characteristic with Compound Key in SAP BW 7.0. This Characteristic use to store the Purchase Order Item Line. The Compound Key is the Purchase Order Document.
So I will have the following fields created for this Characteristic:
Compound Key (Purchase Order Document) 5600001982, Purchase Order Item Line 10
I created a Query for this Characteristic and I have the following as result:
10 ...
20 ...
30 ...
All works fine.
Now I created the Crystal Report from this Query. When I display this Characteristic in Crystal Report, I have the following:
5600001982/10
5600001982/20
5600001982/30
Is this a bug or Crystal not support the Compound Key?
Please advise, thank you.a
-
Hi,
Is there anyway to get the multiple remote key values(different remote systems) for a single record in a single XML file?
Regards
NishaHi Nisha,
you can do this with Syndicator. Asuming that you have defined a XSD for your desired XML format, you can create a syndication map that uses the remote keys for all remote systems. The tab "Map Properties" has a property named "Remote Key Override". This property allows you to select the remote systems that you want to include in syndication. If you add all existing remote systems and set the property flag "Suppress records without key", syndicator creates an XML containing all remote keys.
A suitable XML format could be something like
<Root>
<Record>
<MdmId />
<RemoteSystemCode />
<RemoteKey />
</Record>
</Root>
Record is the repeatable node.
Use MdmId to identify the record in the repository (this is optional of course).
Use RemoteSystemCode and RemoteKey to syndicate the key mapping.
Best regards
Michael -
How to use the Compounding Key in BPC10NW like BW info objects?
Hi experts.
We are longing the suitable solution in BPC-NW 10.0 to deal with compounding key like BW info objects.
We want to define the dimension with compounding key MATERIAL and PLANT, but BPC-NW 10.0 doesn't support it. Therefore we just defined the dimension "PLANT" as entity and "MATERIAL" as user-defined dimension with concatinated key "Material code-Plant code" as ID.
For instance:
-[Dimension PLANT] as type-E (entity)
ID
1000
2000
3000
-[Dimension MATERIAL] as type-U (user-defined)
ID ENTITY MATNR
1000-AAAA 1000 AAAA
1000-BBBB 1000 BBBB
2000-AAAA 2000 AAAA
2000-CCCC 2000 CCCC
3000-BBBB 3000 BBBB
3000-CCCC 3000 CCCC
(ENTITY and MATNR were defined as properties, and ENTITY filled the each member including dimension Plant)
Now we built a input form with following conditions:
-Page axis : ACCOUNT=Revenue, etc...
-Row axis : ENTITY=1000 or 2000, MATERIAL=all
-Column axis : TIME=Jan, Feb, Mar...
The result report came out as follows:
Revenue
PLANT MATERIAL Jan Feb Mar ...
1000 1000-AAAA 0 0 0 ...
1000 1000-BBBB 0 0 0 ...
1000 2000-AAAA 0 0 0 ...
1000 2000-CCCC 0 0 0 ...
1000 3000-BBBB 0 0 0 ...
1000 3000-CCCC 0 0 0 ...
2000 1000-AAAA 0 0 0 ...
2000 1000-BBBB 0 0 0 ...
2000 2000-AAAA 0 0 0 ...
2000 2000-CCCC 0 0 0 ...
2000 3000-BBBB 0 0 0 ...
2000 3000-CCCC 0 0 0 ...
But we expected to have a report restricted MATERIAL with their property on specified PLANT in member selector such as:
Revenue
PLANT MATERIAL Jan Feb Mar ...
1000 1000-AAAA 0 0 0 ...
1000 1000-BBBB 0 0 0 ...
2000 2000-AAAA 0 0 0 ...
2000 2000-CCCC 0 0 0 ...
How do we obtain the expected result? Please give us the good solution!
Best regards,
MasaHi Vadim.
GREAT! Our requirement is fulfilled by that way you described. Special thanks for your help!!!
Best regards,
Masa -
One of our customers is moving from our application (which uses Advantage Database Server) to another application (which uses other database technology). They have asked us to help export their data, so that they can migrate it to another database system. So far, we have used the Advantage Data Architect (ARC32) "Export Table Structures as Code" functionality to generate SQL. We used the "Include existing data" option. The SQL contains the necessary code to recreate the tables and indexes. The customer's IT staff will alter the SQL statements as necessary for their new system.
However, there is an issue with the Primary Keys in these table. The resulting INSERT statements use AutoInc as the type for the Primary Key in each Table. These INSERT statements contains "DEFAULT" for the value of each of these AutoInc fields. The customer would like to output an integer value for each of these Primary Key values in order to maintain referential integrity in their new system.
So far, I have not found any feature of ARC32 that allows us to export the Primary Key values. We had been using an older version of ARC32, since our application does not use the latest version of ADS. I did download the latest version of ARC32 (11.10), but it does not appear to include any new functionality that would facilitate doing this sort of export.
Can somebody tell me if there is such a feature in ARC32?
Or, is there is another Advantage tool to facilitate what we are trying to accomplish?
If there are no Advantage tools to provide such functionality, what else would you suggest?George,
It sounds like the approach you are using is the correct one. This seems to be the cleanest solution to me especially since the customer is able to modify the generated SQL statements for their new system.
In order to preserve the AutoInc values I would recommend altering the table and changing the field datatype from AutoInc to Integer. Then export the table as code which will export the actual values. After the tables have been created on the new system they can change the field datatype back to an AutoInc type if necessary.
Regards,
Chris Franz -
How to create a PDF with substituted key-value and table-values using a template language
I have about 50 key-values and 10 table-values that I want to substitute into a formatted report template (language can be anything standard, would create a small number of these templates) and then use an Adobe tool to substitute the values into the template and produce a PDF. Preferably the template language would permit some basic conditional logic (if <key #> has value <value> then <show key label here> and <key value here> in close spatial proximity on the form) and permit embedding of a static graphic logo, text with fonts/styles, etc. to produce a polished report but also handle pagination (e.g. enable page breaks or numbering) to be handled automatically.
What is a recommended template language and product to accomplish this?Are you thinking of something like a blank form that you can enter information into, save, and send to another user? If so, what you want is possible. If you want more information, post again and include more details about how you want to use it and how the recipient will use it.
Maybe you are looking for
-
Hi, There is a requirement that the same PR shall not be referenced more than once while creating a PO. ie iF a PO has been created wrt a PR the same PR shall not be allowed to be used again in creating another PO. Is there ant std setting. Thanks, S
-
Building JDK 1.4.2.13 in Windows
I am trying to build JDK 1.4.2.13 in Windows. I am using Windows XP (instead of NT) and is the only difference from the informaiton given in build instructions document part of JDK 1.4.2.13. I am trying to build a JRE package from the JDK source whic
-
Improve performance with WL 9 by using WL express license
Hi, <br> We just move to WL 9 and the development response time is quite slow compare to 8.1. <br> Does anyone think that using only the <b>WL Express 9</b> license could improve the performance since must of the features will be disabled ? <br> Than
-
Aggregation for reference characteristic
can i use aggregation (in infocube) for a reference characteristic? Regards
-
Hi, i'm working on HFM 11.1.1.3 ,i loaded several flat files for data grid but i'm not able to see them in documents section,i loaded one custom document also, i tried several times but still its showing empty what can i do? please help me out Thanks