Cumulated Value updation in Transformation level
Hi All,
Pl provide me the logic for the below requirement
Plant ; Date ; Issues Qty ; Receipts qty ; Closing Stock
1011 ; 01/08/2011 ; 100 ; 30 ; 70
1011 ; 02/08/2011 ; 40 ; 10 ; 100
So every day clsong stock should calculte (Issue - Receipts ) and should give <= the date.
Regards
Ramakanth.
Edited by: Ramakanth Deepak Gandepalli on Aug 16, 2011 3:16 PM
Hi Ramakanth,
maybe you can do it thanks to an internal table and a sort statement.
First you can loop at source_package in an internal table in start routine. This has to be declared in global declaration for using it in end routine.
In end routine sort the internal table by ascending date, loop it and use an internall variable for calculate your cumulated value of closing stock. Afterall you can move corresponding fields of this internal table into result_package.
Hope it helps.
Best regards.
Simone.
Similar Messages
-
Dear Experts,
I extracted data with the standard datasource 0CO_OM_OPA_1. Cost from this datasource is costs by month. However, I need to have another key figure for cumulative cost.
1) How can I get cumulative values through the transformation? (I need to display data on Xcelsius, and I am not sure this cumulative value can be achieved in the report)
2) I heard that we can calculate the cumulative value by Non Cumulative Key Figure. However, I don't know how it works. I try to create Non Cumulative Key Figure based on 0AMOUNT from the datasource, but it requires me to add 0CALDAY into my infocube. (The finest level in time dimension in my infocube is 0CALMONTH) Is it true that I can use Non Cumulative value to calculate cumulative value. If yes, how can I do that?Hi.
Use a bex query to do the cumulative calculation of the monthly values. Hook that query up to a universe and retrieve it in Xcelsius.
You can set the key figure property to "cumulative" in the query designer. That should get over to the BO Universe... if not, then you can cumulate it either straight in Xcelsius (you have to know the structure anyway, in order to build the graphs...) or use a web-i report.
br
Jacob -
Cumulative values for any level of a time dimension
Hello,
I want to have a calculated cumulative member working for all levels of a fiscal time hierarchy, YTD, QTD, MTD, WTD.
I can get a column to work for a specific level like that
Aggregate
PeriodsToDate
[Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ],
[Calendar].[Hierarchy - Year to Week].Currentmember
), [Measures].[Billing Net USD]
However what I need is to show the to date whatever level of the dimension is displayed relative to that level. SO if all level are displayed, each intermediate level shows the cumul relative to that level.
I Would really appreciate some pointers to an article or example on how I can do this. Thanks
Thanks/Regards, Philippe CandHi P,
One way to solve this (there are always many ways, each having varying levels performance and simplicity).
CASE
WHEN [Calendar].[Hierarchy - Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ] THEN
Aggregate(PeriodsToDate(
[Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ],
[Calendar].[Hierarchy - Year to Week].Currentmember), [Measures].[Billing Net USD])
WHEN [Calendar].[Hierarchy - Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Period YYYYP] THEN
Aggregate(PeriodsToDate(
[Calendar].[Hierarchy - Year to Week].[Fiscal Period YYYYP],
[Calendar].[Hierarchy - Year to Week].Currentmember), [Measures].[Billing Net USD])
WHEN [Calendar].[Hierarchy - Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Week YYYYWW] THEN
Aggregate(PeriodsToDate(
[Calendar].[Hierarchy - Year to Week].[Fiscal Week YYYYWW],
[Calendar].[Hierarchy - Year to Week].Currentmember), [Measures].[Billing Net USD])
WHEN [Calendar].[Hierarchy - Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Day YYYYDDD] THEN
Aggregate(PeriodsToDate(
[Calendar].[Hierarchy - Year to Week].[Fiscal Day YYYYDDD],
[Calendar].[Hierarchy - Year to Week].Currentmember), [Measures].[Billing Net USD])
else null
end
Hope that helps,
WHEN [Calendar].[Hierarchy
- Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ] THEN Aggregate
PeriodsToDate
[Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ],
[Calendar].[Hierarchy - Year to Week].Currentmember
), [Measures].[Billing Net USD]
WHEN [Calendar].[Hierarchy
- Year to Week].Level is [Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ] THEN Aggregate
PeriodsToDate
[Calendar].[Hierarchy - Year to Week].[Fiscal Quarter YYYYQ],
[Calendar].[Hierarchy - Year to Week].Currentmember
), [Measures].[Billing Net USD]
Richard -
Hi Experts,
We are working for BI implementation for AFS Industry,
when we are working on AFS specific inventory cube 0AFMM_C02 , we are facing stock mismatch problem
for AFS Stock initialization we are using the data source 2LIS_AF_STOCK_INITALIZATION instead of 2LIS_03_BX, this data source is specificly designed for AFS
when we are extracting the data using 2LIS_AF_STOCK_INITALIZATION for stock initialization and
2LIS_03_BF data source to load the Moments.
we compressed cube with Marker update for 2LIS_AF_STOCK_INITALIZATION data load(by deselecting the No marker update check box)
we compressed cube with No Marker update for 2LIS_03_BF historical data load(by selecting the No marker update check box)
we compressed cube with Marker update for 2LIS_03_BF Delta data load(by deselecting the No marker update check box)
Now we are facing stock mistach problem, we found reason for this
"initial non-cumulative for non-cumulative values" option is not available in DTP only Delta & Full options are available
and infopackage of 2LIS_AF_STOCK_INITALIZATION data source also has "Full update" instead of "Generate Intial Status"
Please let us know how can we get the "initial non-cumulative for non-cumulative values" option in the DTP level.
Regards,
ChandraHi Chandrakumar,
We are facing the same problem, how do you solve it?
Regards, -
In Invoice header conditions pricing values updated as u201C0u201D
Dear guruu2019s
I am facing the below error can any please suggest me on the same.
We have created the sales order with 3 line items and we have created 3 individual deliveries and 3 different invoices but for the 1st sales order line item we observed that at invoice level the pricing conditions are not updated at header level the values are u201C0u201D. But the same has been update at sales order level and rest off the 2 sale order (2&3) line items all the invoice has been updated properly.
Dear guru can any one suggest what all reasons that will impact our header condition to update the values as 0
Regards,
BhanuDear Guru's
This is in continuous of the above mail
We observed that in the invoice item level in pricing tab Statistical values field has been updated as option Y- No cumulating- value can be used statistically. If the option is u2013 System will copy item to header totals then automatically the pricing values gets updated in the Header condition tab.
Here my doubt is how system updates this value. If I would like to change the same it is in grayed out mode. Please suggest me the same
Regards,
Bhanu Prathap -
Not all fields are getting updated in transformation
Dear all,
Please help me in the following issue:
I have the following scenario:
DSO1 and CUBE1. From DSO1 to CUBE1 I have transformation. Fields are mapped one to one.
Some of the fields are getting updated in transformation (22 fields) and some of them are not updated in transformation. (2 - storage location and steel grade).
The fields exist in DSO 1 but don't go into cube.
I did the following:
1. deleted transformation and dtp, recreate = > not working
2. copied the cube, and create new transformation and DTP...not working.
Any help would be appreciated
Thank you
RamonaHi Ramona,
Storage location (standard infoobject 0STOR_LOC) has plant as compunding object, check whether this is the issue ? (may be check with Steel grade infoobject also).
Else, do some RSRV checks on the DSO and Infoobject, if it doesn't bring up any issue, raise a message with SAP.
Check your BW Support Pack level , is it the latest ? Give more details about the scenario ?
Cheers,
CK -
Non-cumulative Values not showing in Inventory Management Queries
Hi:
Has anyone had a problem with the new version and Non-cumulative key figures not showing up in Bex for Inventory Managemet reports? Specifically, they showed and validated back to ECC for our Development and QA boxes but now in our Regression box they are all showing zeros. Our Cumulative values are all showing correctly still within the Regression box. For example, Total Receipts and Total Issues are correctly poplating values but Total Stock is not.
I have checked and validate that the configuration in the Regression box matches or Dev and QA box.Found the problem. It had to do with the compression variant in the delta process chain. The compression was set to 'no marker update'. Since we only started receiving measureable deltas in or regression box this is where the incorrect setting showed up. Reinitalized and the deltas are working correctly now.
-
Maintaining non-cumulative values in Mlti provider
Can we maintain non ucmulative values inteh multi ptovider Extras - > Maintain non cumulative values section.
I created few new cubes which has non cumulative keyfigures . In the cube I made 0CAL DAY as reference characteristic and selected Company code (0COMP_CODE) and Posting date in the document (0PSTNG_DATE) as characteristics of validity table for non-cumulatives.
Now I inlcude the new cubes and identified the non cumulative key figures in the multi provider.
Now here also do I need to make 0CAL DAY as reference characteristic and selected Company code (0COMP_CODE) and Posting date in the document (0PSTNG_DATE) as characteristics of validity table for non-cumulatives.I did not find an option in Extras - > Maintain non cumulative values in multi provider. CAn we maintain non cumulatives in MP ?Hello,
You dont need to maintain it at the MP level also.
Non-cumulative parameters are manitained only at the cube level.This was the case in 3.x so it should be the same in 7.0 also.
Regards
Ajeet -
Category attributes default values updating
Hi,
I'm developing an application that, upon upload of a file to the specified root folder(through the application), reads some values from a file, creates a folder structure based on those values, and moves the file in the bottom folder. Now, a predefined category should be attached to the file, to enable search by category attributes. My idea is to set the category as required on that bottom folder (or the first), and modify it's attribute default values, so that the file inherits them when moved in it. I have found mshannon's examples in some other thread ( Updating a document with category metadata using updateDocument(): error! ), the first one works only with files, not folders, and the second one doesn't work for me at all, I get an error:
javax.faces.el.EvaluationException: ORACLE.FDK.AggregateError:ORACLE.FDK.AggregateError
here is my code:
public static void updateAttributes() throws FdkException, RemoteException{
login();
FileManager fm = s_WsCon.getFileManager();
Item fajl = fm.resolvePath(prop.getProperty("userhome") + "/root folder/folder1/readme1.txt",
null);
long docID = fajl.getId();
NamedValue[] catInstAtr = new NamedValue[] {
new NamedValue("CUSTOM_138297", "changed value for att1"),
new NamedValue("CUSTOM_138299", "changed value for att2")
NamedValue[] catDef = new NamedValue[] {
new NamedValue(Options.UPDATE_CATEGORY_ID,new Long(139054)),
new NamedValue(Options.CATEGORY_DEFINITION_ATTRIBUTES, catInstAtr)
NamedValue[] docDef = new NamedValue[] {
new NamedValue(Options.CATEGORY_DEFINITION, catDef)
AttributeRequest[] reqAtr = new AttributeRequest[]{
new AttributeRequest(Attributes.DESCRIPTION, null)
fajl = fm.updateDocument(docID, docDef, reqAtr);
logut();
This example is (I think) only for updating on document level, but I could use a solution for folder-level updating, as I explained before. Can anyone help me?
Thanks,
PedjaPedja,
Here is my code to get category from Folder this is updated version from sample code TestCategory2.java
1. It will get the required category of a folder.
2. gets the internal category attribute names
3. get Category id if uploading file along with category attribute values OR
updating file and also updating previous category instance values..
package oracle.ifs.examples.content.testcases;
import java.util.Map;
import java.util.Properties;
import java.util.*;
// Facade Objects
import oracle.ifs.fdk.AttributeRequest;
import oracle.ifs.fdk.Attributes;
import oracle.ifs.fdk.FdkConstants;
import oracle.ifs.fdk.FdkErrorCodes;
import oracle.ifs.fdk.FdkException;
import oracle.ifs.fdk.FdkExceptionEntry;
import oracle.ifs.fdk.Item;
import oracle.ifs.fdk.Options;
import oracle.ifs.fdk.NamedValue;
import oracle.ifs.fdk.NamedValueSet;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import HTTPClient.HTTPConnection;
import HTTPClient.HTTPResponse;
import HTTPClient.HttpOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
// Web Services Managers
import oracle.ifs.fdk.CategoryManager;
import oracle.ifs.fdk.CommonManager;
import oracle.ifs.fdk.FileManager;
// Framework
import oracle.ifs.examples.content.fdk.FdkSession;
import oracle.ifs.examples.content.fdk.FdkUtils;
import oracle.ifs.examples.content.fdk.Managers;
import oracle.ifs.examples.content.fdk.constants.ItemAttributes;
import oracle.ifs.examples.content.fdk.constants.NamedValueConstants;
import oracle.ifs.examples.content.testcases.AbstractTest;
public class TestCategories3
implements ItemAttributes, NamedValueConstants
public TestCategories3()
public static void main(String[] args)
TestCategories3 tc3= new TestCategories3();
tc3.getCatinfo();
* This is where you write your test program.
public void getCatinfo()
log(this.getClass().getName()+": starting");
FdkSession session = null;
try
AttributeRequest[] requestedAttributes = null;
NamedValue[] sortOptions = null;
Map returnedAttrs = null, map = null;
log("\nAuthenticating as regular test user ...");
session = new FdkSession("http://xxx.com:8320/content/","anakkala","sample");
CommonManager commonM = Managers.getCommonManager(session);
CategoryManager categoryM = Managers.getCategoryManager(session);
FileManager fileM = Managers.getFileManager(session);
// save this attribute request so that it can be used later
AttributeRequest[] AR_CATEGORY_CONFIGURATION_ATTRIBUTES =
FdkUtils.newAttributeRequestArray(Attributes.CATEGORY_CONFIGURATION,
FdkUtils.newAttributeRequestArray(new Object[]
// Is the category configuration enabled
FdkUtils.newAttributeRequest(Attributes.CONFIGURATION_ENABLED),
// Can the category configuration be overridden or is it final
FdkUtils.newAttributeRequest(Attributes.CONFIGURATION_FINAL),
// What are the required categories for the category configuration
FdkUtils.newAttributeRequest(Attributes.REQUIRED_CATEGORIES,
// for the required categories ...
FdkUtils.newAttributeRequestArray(new Object[]
// What is the category classobject display name
FdkUtils.newAttributeRequest(Attributes.DISPLAY_NAME),
// get attributes inherited and introduced by category object
FdkUtils.newAttributeRequest(Attributes.METADATA_ATTRIBUTES,
// get full settings for each of these attributes
FdkUtils.newAttributeRequestArray(METADATA_ATTRIBUTE_ATTRIBUTES)
// Are there any attribute overrides for this category config?
FdkUtils.newAttributeRequest(Attributes.ATTRIBUTE_OVERRIDES,
// get full settings for each of these attribute overrides
FdkUtils.newAttributeRequestArray(ATTRIBUTE_OVERRIDE_ATTRIBUTES))
log("\nLooking up folder /d-rco/C1/L1/folder1 ...");
// convert attribute request map to AttributeRequest[]
requestedAttributes = AR_CATEGORY_CONFIGURATION_ATTRIBUTES;
Item folder =fileM.resolvePath(
"/d-rco/C1/L1/folder1",
requestedAttributes);
log("folder id is="+folder.getId());
log("\nProcessing requested attributes - goal: generate override ...");
//returns a map
returnedAttrs = FdkUtils.getAttributesMap(folder);
Item categoryConfig = (Item)
returnedAttrs.get(Attributes.CATEGORY_CONFIGURATION);
returnedAttrs = FdkUtils.getAttributesMap(categoryConfig);
// is CategoryConfiguration enabled?
Boolean ccEnabled = (Boolean) returnedAttrs.
get(Attributes.CONFIGURATION_ENABLED);
// is CategoryConfiguration final? false=subfolders can override
Boolean ccFinal = (Boolean) returnedAttrs.
get(Attributes.CONFIGURATION_FINAL);
// what are the attribute overrides for this category configuration
log("\nAttribute overrides ...");
Item[] attributeOverrides = (Item[]) returnedAttrs.
get(Attributes.ATTRIBUTE_OVERRIDES);
FdkUtils.log(attributeOverrides);
// what are the requred categories for this category configuration
log("\nRequired categories ...");
Item[] reqCategories = (Item[]) returnedAttrs.get(Attributes.REQUIRED_CATEGORIES);
FdkUtils.log(reqCategories);
log("After printing required categories");
if(ccEnabled.booleanValue() && !ccFinal.booleanValue()
&& reqCategories != null && reqCategories.length >= 1)
// Folder /<domain>/<basecontainer>/L1/F3.EC has an enabled category
// configuration that can be overridden and has required categories
// present ...
Item category = null;
for (int i=0; i < reqCategories.length; i++)
returnedAttrs = FdkUtils.getAttributesMap(reqCategories);
log( "xxx name="+((String) returnedAttrs.get(Attributes.DISPLAY_NAME) ));
if ( ((String) returnedAttrs.get(Attributes.DISPLAY_NAME)).
equals("BG_Serv_Req"))
category = reqCategories[i];
break;
log("category id="+category.getId());
if (category != null)
NamedValue[] internalCategoryAttrs = null;
try {
internalCategoryAttrs =getInternalCategoryAttrNames("BG_Serv_Req",session);
}catch(Exception e)
log("error getting internal names");
e.printStackTrace();
log("Category Attribute internal Name ="+ (String)internalCategoryAttrs[0].getValue());
log("Category Attribute internal Name ="+ (String)internalCategoryAttrs[1].getValue());
NamedValue[] categoryInstanceAttributes = new NamedValue[] {
// use the internal attribute name for all attributes
new NamedValue((String)internalCategoryAttrs[0].getValue(), "XNXNXNXN 234"),
new NamedValue((String)internalCategoryAttrs[1].getValue(), "SNKKSKSK 1234")
NamedValue[] categoryDef = new NamedValue[] {
// the id of the category object class for which this new category will be an
//instance of
new NamedValue(Options.CATEGORY_CLASS_ID, new Long(category.getId())),
// the updated values of the category instance
new NamedValue(Options.CATEGORY_DEFINITION_ATTRIBUTES, categoryInstanceAttributes)
String sourceFile="test.doc";
String folderPath = "C:\\upload";
requestedAttributes = FdkUtils.newAttributeRequestArray(Attributes.URL);
Item doc = fileM.resolveRelativePath(folder.getId(),sourceFile, requestedAttributes);
log("START ORACLE TEST CODE FROM TAR");
// this will get the category instance id
AttributeRequest categoryAR = new AttributeRequest();
categoryAR.setAttributeName(Attributes.CATEGORIES);
AttributeRequest[] attrRequests = new AttributeRequest[]
{ categoryAR};
Item myDoc = commonM.getItem(doc.getId(), attrRequests);
NamedValue[] requestedAttributesNV = myDoc.getRequestedAttributes();
int length = requestedAttributesNV == null ? 0 :
requestedAttributesNV.length;
Item[] itemCategories = null;
log("length="+length);
for (int i = 0; i < length; i++)
log("requestedAttributesNV[i].getName()="+requestedAttributesNV[i].getName());
if(requestedAttributesNV[i].getName().equals(Attributes.CATEGORIES))
itemCategories = (Item[]) requestedAttributesNV[i].getValue();
length = itemCategories == null ? 0 : itemCategories.length;
log("length="+length);
long categoryInstanceId = 0;
for (int i = 0; i < length; i++)
log("Category instance " + itemCategories[i].getName() + " has id " +
itemCategories[i].getId());
categoryInstanceId = itemCategories[i].getId();
log("END ORACLE TEST CODE FROM TAR");
/* If the document does not exist in OCS */
if (doc == null) {
requestedAttributes = FdkUtils.newAttributeRequestArray(Attributes.URL);
NamedValue[] nvdoc = FdkUtils.newNamedValueArray(
new Object[][] { { Attributes.NAME,sourceFile} }
Item def = fileM.createDocumentDefinition(nvdoc,requestedAttributes);
int uploadStatusCode = uploadContent(
session,
getSampleFileStream(sourceFile,folderPath),
(String) FdkUtils.getAttribute(def,Attributes.URL)
log("Upload Status to definition file: "+uploadStatusCode);
nvdoc = FdkUtils.newNamedValueArray(
new Object[][]
{ Attributes.NAME,sourceFile},
{ Options.USE_SAVED_DEFINITION, new Long(def.getId())},
{ Options.DESTFOLDER, new Long(folder.getId()) },
// apply category instance informationnew
{ Options.CATEGORY_DEFINITION, categoryDef }
requestedAttributes = FdkUtils.newAttributeRequestArray(Attributes.URL);
doc = fileM.createDocument(nvdoc,null,requestedAttributes);
}else /* if document already exist in OCS */
log(sourceFile+" file exists so updating ...");
int uploadStatusCode = uploadContent(
session,
getSampleFileStream(sourceFile,folderPath),
(String) FdkUtils.getAttribute(doc ,Attributes.URL)
log("uploadStatusCode="+uploadStatusCode);
FileInputStream fi= getSampleFileStream(sourceFile,folderPath);
log("category id using in update="+ category.getId());
NamedValue[] updatecatdef = new NamedValue[] {
//new NamedValue(Options.UPDATE_CATEGORY_ID, new Long(category.getId())),
new NamedValue(Options.UPDATE_CATEGORY_ID, new Long(categoryInstanceId)),
new NamedValue(Options.CATEGORY_DEFINITION_ATTRIBUTES,
new NamedValue[] {
new NamedValue((String)internalCategoryAttrs[0].getValue(), "AH234 V2"),
new NamedValue((String)internalCategoryAttrs[1].getValue(), "SNHGZ12 V2")
NamedValue[] nv = FdkUtils.newNamedValueArray(
new Object[][]
{ Attributes.NAME,sourceFile},
{ Attributes.DESCRIPTION,"Sample file"},
//{Options.CONTENTSTREAM, fi},
{ Options.CATEGORY_DEFINITION, updatecatdef }//Newly added for category upload
requestedAttributes = FdkUtils.newAttributeRequestArray(Attributes.URL);
// THIS IS WHERE WE ARE GETTING ERROR
fileM.updateDocument(doc.getId(),nv,requestedAttributes);
System.out.println("doc = fm.updateDocument is complete ........." );
} // end if (Document Confidentiality category present)
} // end if category configuration enabled / overridable etc
catch (FdkException fe)
FdkUtils.log(fe);
fe.printStackTrace();
catch (Exception e)
// java.net.MalformedURLException;
// java.rmi.RemoteException;
// javax.xml.rpc.ServiceException;
// org.apache.axis.AxisFault
log("Fatal exception occurred in run():");
e.printStackTrace();
finally
if (session != null)
session.disconnect();
log("\n"+this.getClass().getName()+": ending");
private FileInputStream getSampleFileStream(String filename,String path)
throws FileNotFoundException
FileInputStream stream = null;
if (filename != null && filename.length() >= 1)
if (path.length() >=1 && !path.endsWith("/"))
path += "/";
stream = new FileInputStream(new File(path+filename));
return stream;
public int uploadContent(
FdkSession session,
InputStream inputStream,
String destinationURL
throws Exception
int statusCode = -1;
if (inputStream == null) return statusCode;
HTTPConnection conn = null;
try
URL url = new URL(destinationURL);
conn = session.getHttpConnection(url);
byte[] buffer = new byte[8192];
int count=0;
HttpOutputStream outputStream = new HttpOutputStream();
HTTPResponse response = conn.Put(url.getFile(), outputStream);
try
while ((count = inputStream.read(buffer)) != -1)
outputStream.write(buffer, 0, count);
finally
outputStream.flush();
outputStream.close();
statusCode = response.getStatusCode();
finally
if (inputStream != null)
inputStream.close();
if (conn != null)
conn.stop();
conn = null;
return statusCode;
// Handle the response. Note that a successful response may not be
// 200, but may also be 201 Created, 204 No Content or any of the other
// 2xx range responses.
public void log(String s)
System.out.println(s);
public NamedValue[] getInternalCategoryAttrNames(String categoryName,FdkSession session) throws Exception
NamedValue[] returnNV = null;
Map attmap = new HashMap();
attmap.put(Attributes.METADATA_ATTRIBUTES,
FdkUtils.newAttributeRequestArray(
new String[] { Attributes.ATTRIBUTE_NAME,
Attributes.DISPLAY_NAME }));
AttributeRequest[] request = FdkUtils.getAttributeRequestArray(attmap);
Item cat = FdkUtils.getCategoryObject(session, null, categoryName, request);
log("inside method cat id="+cat.getId());
/** ANAKKALA START **/
NamedValue[] catNV = cat.getRequestedAttributes();
if( catNV != null && catNV.length >0)
for (int i=0; i<catNV.length; i++)
if(catNV[i].getName().equals("METADATA_ATTRIBUTES"))
//log("** CatNV.getName="+catNV[i].getName()+" value="+catNV[i].getValue());
Item[] meta = (Item[]) catNV[i].getValue();
log("meta length="+meta.length);
returnNV = new NamedValue[meta.length];
for (int j=0; j<meta.length; j++)
log("--Item getname="+meta[j].getName()+" value="+meta[j].getId()+" gettype="+meta[j].getType()+" gettypedesc="+meta[j].getTypeDesc());
returnNV[j] = new NamedValue(meta[j].getName(),meta[j].getName());
NamedValue[] metaNV = meta[j].getRequestedAttributes();
log("---metaNV length="+metaNV.length);
for(int k=0; k<metaNV.length; k++)
log("------metaNV.getName="+metaNV[k].getName()+" value="+metaNV[k].getValue());
/** ANAKKALA END **/
//NamedValue[] ret = null;
return returnNV; -
How to load init for non cumulative values?
Hi folks,
anyone here, who can tell me how to load initial amounts from DSO to non cumulative values in InfoCubes?
I found only poor documentation about this.
Thanks!hi Timo
you load initial of load as you do in the normal case only thing you have to keep in mind that before loading opening balance you have to UNCLICK NO MARKER UPDATE from the infocube and compress the request ASAP as it will greatly effect your query performance.
sanjeev -
When do we use Non-Cumulative values?
Hi BW Experots?
When do we use Non-Cumulative values?How is it related with exception aggregation
Please tell me .
Thanks in anticipation.Hi,
Taken from std, doc....
A non-cumulative is a non-aggregating key figure on the level of one or more objects that is always displayed in relation to time. Examples of non-cumulatives include headcount, account balance and material inventory.
http://help.sap.com/saphelp_nw04/helpdata/en/8f/da1640dc88e769e10000000a155106/frameset.htm
Check this out...
http://help.sap.com/saphelp_nw04/helpdata/en/80/1a62dee07211d2acb80000e829fbfe/frameset.htm
Pls. assign points if this helps you.. ****
Thanks,
Raj -
KF creation - Non-cumulative value with NCUM value change - option
What is the use above option in the KF creation?
ThanksHi,
A non-cumulative is a non-aggregating key figure on the level of one or more objects, which is always displayed in relation to time. Examples of non-cumulatives include headcount, account balance and material inventory.
If you use non-cumulative key figures, an absolute non-cumulative value (the marker) and all non-cumulative value changes are saved in the fact table of the InfoCube. In this way, the retention and volume of data in the data loading process is optimized. A data record is then only loaded to the InfoCube if a non-cumulative changes because of a transaction. Non-cumulatives can then be evaluated at any time in queries, using non-cumulative key figures.
Pls chk this links;
http://sap.seo-gym.com/inventory.pdf
http://help.sap.com/saphelp_nw2004s/helpdata/en/8f/da1640dc88e769e10000000a155106/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/80/1a62ebe07211d2acb80000e829fbfe/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/8f/da1640dc88e769e10000000a155106/frameset.htm
http://help.sap.com/saphelp_nw2004s/helpdata/en/80/1a62f8e07211d2acb80000e829fbfe/frameset.htm
Reagrds
CSM Reddy -
No Quantity/ value update at Movement type
Hello All,
At Material type level with valuation area SAP controls check / uncheck Quantity/ Value updating (OMS2)
In our specific business scaenraios, we use material type (HALB) with valuation area combination with / without Quanity & Value updating. Hnece, above setting will not work in our scenario.
is it possible to have control of Quantity/ Value updating by using a custom movement (ex: copy of 101 to 1Z1)?
Really appreciate your thoughts!
Thanks
SivaHii shiva, lots of threads are available regarding this .
have u gone thru.plz search sdn, u will get good reply.
quantity and value update
Quantity update and value update in case of account assignment category
Material Type that updates Value but no Quantity
Quantity and value updates for stock.
quantity/value updation query
hope u will get sm idea.
Note : Do not use SMS Speak.Avoid links while answering,try to give your own suggestions.
Edited by: Jeyakanthan A on Jul 22, 2011 10:25 AM -
Subsequent use of cumulated value in query
Hi All,
We are using BEx Query Designer to create a query having one formula variable Stock on Hand as a cumulated value (along the columns).Now we need to use this cumulated value in another formula variable. Is this possible to do? If not could you please suggest an alternate for the same?
Stock on hand (for any given week) = (Total Receipts Total Demand) + Stock on Hand (for previous week).
Inv. Carrying Cost (for any given week) = Stock on hand (cumulated values as above) * Per unit inv. cost
Data for Total Receipts, Total Demand and Per unit Inv. Cost is present in the infocube at daily level. A sample report template has been given below:
Product Location Week W1 W2 W3
P1 L1 Total Demand 10 10 10
Total Receipts 20 0 5
Stock on Hand 10 0 -10
Per unit Inv. Cost 2 2 2
Inv. Carrying cost 20 0 -20
Points assigned in advance for your replies
Regards,
Bansi.Hi PV,
Thanks for the prompt reply. But we have already created two different formulae variables for the above requirement.
The formula variable for Stock on hand is displaying the desired cumulative values. But the formula for Inv. Carrying cost is not able to use the display-value (cumulative value) of Stock on hand and it just uses the value corresponding to that particular week. For eg.
for w2 if stock on hand =20 (cumulative value displayed on screen)
and the original value of stock on hand for w2 = 0
then the formula for Inv. carrying cost is using the original value(i.e. 0) but not the display value(i.e.20), whereas we want the cumulative value (i.e. 20) for our calculation.
Any help in this regard would be highly appreciated.
Regards,
Bansi. -
Formula at Transformation level
Hi All,
One formula has written at transformation level for the infoobject Zvendor.
Formula is as follows RIGHT( 10, REPLACE_FIRST( '2VEN', '0000', GN_VENDOR ) ). As per my understanding Vendor number will take 10 digits and it is replacing with '0000' if the value is '2VEN'
Can you please confirm whether my understanding is correct or not?
Thanks in advance.What i understood is:
It will replace the first occurance of 2VEN with 0000 and take first 10 digits of the resulting string.
Edited by: Pravender on May 26, 2010 1:26 PM
Maybe you are looking for
-
Ipad2 is sluggish after iOS 8 upgrade
Since downloading ios8 my iPad2 has become very sluggish, cell service drops out and only a hard reboot will restore, some of my apps icons only show up as an icon framework, exchange based email seems to be getting erased and has to reload ( same on
-
Flash based photo galleries won't play
Photos on my website have stopped working, The website was built using NetObjects Fusion XII on Windows 7 (64 bit) and the photo galleries use shockwaveflash. I have checked the addons and plugins and everything is up to date. I have re-installed fla
-
HI we create purchase order number 3 or 4 months before delivery. But we negociate with our suppliers that we have to buy the goods with the price at the delivery date. The concerned purchase order numbers are created with price date category "GR dat
-
Workshop : webservices : Dynamic Client
I am using WebLogic Workshop 8.1 to crate a test Web Service. I have created a webservice with two methods to support 1. SOAP RPC call 2. SOAP document call This is working fine with the test harness provided by workshop. I have written two Dynamic c
-
XI license effect any thing..
Hello, My company recently installed XI recently and tested. Everything looks ok. But, when i try to access cache notifications from my ID/IR It is not giving any notifications. Is there anything related to license. What are restrictions SAP has with