Main Tables in FI
Hi Experts,
Can anyone provide me a list of the main tables in FI ( AP,AR and GL )
Thanks,
SS
Hi
Following are the main FI tables
BKPF
BSEG
BSIS
BSAS
BSID
BSAD
BSIK
BSAK
You can see the contents through SE11
Regds
Rajiv
Similar Messages
-
Unable to read field value from main table - unexpected socket read error
Hi Friends,
While executing the below code, I am able to get the value of the field 'id' but i am unable to get the value for the 'materialnumber' field. i am getting the below exception
+com.sap.mdm.commands.CommandException: com.sap.mdm.internal.protocol.manual.ProtocolException: java.io.IOException: Unexpected socket read. Result is -1.
at com.sap.mdm.data.commands.AbstractRetrieveLimitedRecordsCommand.execute(AbstractRetrieveLimitedRecordsCommand.java:158)
at com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand.execute(RetrieveLimitedRecordsCommand.java:157)
at updaterecords.main(updaterecords.java:126)
Caused by: com.sap.mdm.internal.protocol.manual.ProtocolException: java.io.IOException: Unexpected socket read. Result is -1.
at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:100)
at com.sap.mdm.data.commands.AbstractRetrieveLimitedRecordsCommand.execute(AbstractRetrieveLimitedRecordsCommand.java:146)
... 2 more
Caused by: java.io.IOException: Unexpected socket read. Result is -1.
at com.sap.mdm.internal.net.DataSocket.receiveData(DataSocket.java:59)
at com.sap.mdm.internal.net.ConnectionImpl.readInt(ConnectionImpl.java:417)
at com.sap.mdm.internal.net.ConnectionImpl.nextMessage(ConnectionImpl.java:501)
at com.sap.mdm.internal.net.ConnectionImpl.receiveMessage(ConnectionImpl.java:472)
at com.sap.mdm.internal.net.ConnectionImpl.send(ConnectionImpl.java:209)
at com.sap.mdm.internal.net.ReservedConnection.send(ReservedConnection.java:105)
at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:97)
... 3 more+
import com.sap.mdm.commands.AuthenticateUserSessionCommand;
import com.sap.mdm.commands.CommandException;
import com.sap.mdm.commands.CreateUserSessionCommand;
import com.sap.mdm.commands.DestroySessionCommand;
import com.sap.mdm.commands.GetRepositoryRegionListCommand;
import com.sap.mdm.data.Record;
import com.sap.mdm.data.RegionProperties;
import com.sap.mdm.data.ResultDefinition;
import com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand;
import com.sap.mdm.ids.TableId;
import com.sap.mdm.net.ConnectionException;
import com.sap.mdm.net.ConnectionPool;
import com.sap.mdm.net.ConnectionPoolFactory;
import com.sap.mdm.schema.FieldProperties;
import com.sap.mdm.schema.RepositorySchema;
import com.sap.mdm.schema.commands.GetFieldListCommand;
import com.sap.mdm.schema.commands.GetRepositorySchemaCommand;
import com.sap.mdm.search.Search;
import com.sap.mdm.server.DBMSType;
import com.sap.mdm.server.RepositoryIdentifier;
public class updaterecords {
public static void main(String[] args) {
try {
String serverName = "159.112.6.26";
ConnectionPool connections = null;
try {
connections = ConnectionPoolFactory.getInstance(serverName);
} catch (ConnectionException e) {
e.printStackTrace();
return;
// specify the repository to use
// alternatively, a repository identifier can be obtain from the GetMountedRepositoryListCommand
String repositoryName = "DEMO";
String dbmsName = "MDMD";
RepositoryIdentifier reposId = new RepositoryIdentifier(repositoryName, dbmsName, DBMSType.ORACLE);
// get list of available regions for the repository
GetRepositoryRegionListCommand regionListCommand = new GetRepositoryRegionListCommand(connections);
regionListCommand.setRepositoryIdentifier(reposId);
try {
regionListCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
return;
RegionProperties[] regions = regionListCommand.getRegions();
// create a user session
CreateUserSessionCommand sessionCommand = new CreateUserSessionCommand(connections);
sessionCommand.setRepositoryIdentifier(reposId);
sessionCommand.setDataRegion(regions[0]); // use the first region
try {
sessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
return;
String sessionId = sessionCommand.getUserSession();
// authenticate the user session
String userName = "meter1";
String userPassword = "meter1";
AuthenticateUserSessionCommand authCommand = new AuthenticateUserSessionCommand(connections);
authCommand.setSession(sessionId);
authCommand.setUserName(userName);
authCommand.setUserPassword(userPassword);
try {
authCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
return;
GetRepositorySchemaCommand cmd=new GetRepositorySchemaCommand(connections);
cmd.setSession(sessionId);
try{
cmd.execute();
}catch(CommandException e){
System.out.println(e.getLocalizedMessage());
RepositorySchema repsch=cmd.getRepositorySchema();
// the main table, hard-coded
TableId mainTableId = new TableId(1);
// specify the result definition (what to retrieve); in this example, nothing
ResultDefinition rd = new ResultDefinition(mainTableId);
// select all records
Search search = new com.sap.mdm.search.Search(mainTableId);
//get fields
GetFieldListCommand getFieldListCommand = new GetFieldListCommand(connections);
getFieldListCommand.setSession(sessionCommand.getUserSession());
getFieldListCommand.setTableId(mainTableId);
try {
getFieldListCommand.execute();
} catch (CommandException e) {
System.out.println(e);
FieldProperties[] lookupFields = getFieldListCommand.getFields();
// add fields to records to retrieve
rd.addSelectField(repsch.getFieldId("Products","Id"));
rd.addSelectField(repsch.getFieldId("Products","MaterialNumber"));
// retrieve the records
RetrieveLimitedRecordsCommand limitingCommand = new RetrieveLimitedRecordsCommand(connections);
limitingCommand.setSession(sessionId);
limitingCommand.setResultDefinition(rd);
limitingCommand.setSearch(search);
//limitingCommand.setPageSize(2000);
try {
limitingCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
return;
System.out.println("Record count is " + limitingCommand.getRecords().getCount()+"\n");
Record[] records=limitingCommand.getRecords().getRecords();
System.out.println(records[0].getFieldValue(repsch.getFieldId("Products","Id"))+ " \n");
System.out.println(records[0].getFieldValue(repsch.getFieldId("Products","MaterialNumber"))+ " \n");
// finally destroy the session
DestroySessionCommand destroySessionCommand = new DestroySessionCommand(connections);
destroySessionCommand.setSession(sessionId);
try {
destroySessionCommand.execute();
} catch (CommandException e) {
e.printStackTrace();
return;
} catch (Exception e) {
System.out.println(e.getLocalizedMessage());
e.printStackTrace();
Kindly let me know where i am going wrong. MaterialNumber field is a TEXT not a lookup table field. Above fields are from the main table.
Thanks,
RaagsHi Friends,
I got the solution. It was the error because of not having a the below statement.
limitingCommand.setPageSize(1);
As i havent used that statement, it was trying to get 1000 records, and i dont know exactly what makes this to get that error. Anyhow., As i want to use for updation, i cn live with one record.
Thanks,
Raags -
Retrieving lookup field values from a main table using MDM JAVA APIs
Hi all,
am trying to retrieve the main table data...., i could able to retrieve all the data except lookup field values..., iam facing some runtime exceptions and i dont know why exactly it is throwing this exception..., i pasted piece of code where exactly the error is and the exception also.
in the below sode i set some result set definitions and passing them to retrieveLimitedRecordsCommand. it is showing some exception at retrieveLimitedRecordsCommand.execute(); command.
//*** Code ***//
supportingMainResultDefinitions = new ResultDefinition[] { rdQual ,rdFlat, rdqFlat };
retrieveLimitedRecordsCommand.setResultDefinition(rd);
retrieveLimitedRecordsCommand.setSearch(new Search(tableId));
retrieveLimitedRecordsCommand.setSession(sessionId);
retrieveLimitedRecordsCommand.setSupportingResultDefinitions(supportingMainResultDefinitions);
try {
retrieveLimitedRecordsCommand.execute();
PrintRecords.toConsole(retrieveLimitedRecordsCommand.getRecords());
} catch (CommandException e) {
e.printStackTrace();
//*** Below is the Exception raised ***//
java.lang.UnsupportedOperationException: Unexpected field type -1
at com.sap.mdm.internal.schema.PropertiesHelper.createField(PropertiesHelper.java:274)
at com.sap.mdm.internal.schema.PropertiesHelper.convertFrom(PropertiesHelper.java:281)
at com.sap.mdm.internal.data.RecordMetadata.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordsLoader.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordsLoader.<init>(Unknown Source)
at com.sap.mdm.internal.data.RecordResultSetHelper.convertFrom(Unknown Source)
at com.sap.mdm.data.commands.RetrieveLimitedRecordsCommand.execute(Unknown Source)
at com.sap.mdm.apitutorial.lesson2.RecordsDisplay.getDisplayRecords(RecordsDisplay.java:303)
at org.apache.jsp.Sample_jsp._jspService(Sample_jsp.java:190)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:825)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:738)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:526)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:534)
If anyonw worked on this concept..., please provide me the solution
Regards
Praveen kWhich version are you using? Can you please try and narrow down to the offending field? You can do this by limiting the fields you provide to ResultDefinition.
-
How to replace NULL values from main table
Dear all,
I like to remove the NULL values from a main table field. Or the question is how to replace any part of the string field in MDM repository main table field.
e.g. I have a middle name field partly the value is NULL in some hundreds of records, I like to replace NULL values with Space
any recommendation.
Regards,
NaeemHi Naeem,
You can try using Workflows for automatically replacing NULLs with any specific value.
What you can do is: Create a workflow and set trigger action as Record Import, Record Create and Record Update. So, that whenever any change will occur in the repository; that workflow will trigger.
Now create an assignment expression for replacing NULLs with any specific value and use that assignment expression in your workflow by using Assign Step in workflow.
For exiting records, you will have to replace NULLs manually using the process given by Preethi else you can export those records in an Excel spreadsheet which have NULLs and then replace all NULLs with any string value and then reimport those records in your MDM repository.
Hope this will solve your problem.
Regards,
Varun
Edited by: Varun Agarwal on Dec 2, 2008 3:12 PM -
What are the main tables using in vendor performance report.
what are the main tables using in vendor performance report.
how many select statements are in ABAP reports.Refer the links -
vendor performance report !!!
vendor performance report
vendor performance report
I need standard vendor performance report
Regards,
Amit
Reward all helpful replies. -
PDF file Not opening in Main Table
Hi,
I have added PDF lookup field in my main Table in console.
I m able to import PDF file in PDF table ( after making Allow Invalid PDFs as YES)
I have also imported PDF file in Main table field.
But here PDF file is not opening.
I m able to open PDF file only in PDF table & not in main table.
Also i am not able to Generate Thumbnail.
I m getting error:
Regenerating thumbnail for 'Mahi.pdf'...failed.
Regeneration of thumbnails complete.
Can anybody tell me what could be the problem?
Thanks,
MahiHi Maheshwari,
I have added PDF lookup field in my main Table in console.
I m able to import PDF file in PDF table ( after making Allow Invalid PDFs as YES)
I have also imported PDF file in Main table field.
But here PDF file is not opening.
You can link the pdf to the Main tabel record by two ways:
1. Using Import Manager
2. Using Data Manager itself.
I have just tried it by the second way and I am able to open the Pdf in the Main Table itself.
PLease follow these step below:
1. Import the Pdf in the Pdf table and store the Pdf in the repository itself by choosing the Option - +Store in Repository+
2.Go to Main Table and double click on the Look up field on the right side. GO to the Data Group Tab and add the Data Group you have created.
3. Then choose the pdf you want to choose for that particular main table record. You will find the PDf getting attached in the Main Table Record.
4. Now try and open the Pdf, HopefullyYou will find it opening in the Main Table itself .
Hope it helps.
Thanks and Regards
Nitin jain -
I am new to MDM 7.1 & Multiple Main Tables. I have a very basic questionu2019
My Requirement is that I have to keep Two Main Tables,
1. Manufacturer Parts Master Table and the key is Manufacturer Name + Manufacturer Part No (Two fields)
2. I have another Main Table called Manufacturer Parts Table and key will be Manufacturer Name + Manufacturer Part No (Two fields)
My requirement is that when I load data in to the 2nd Main table (Manufacturer parts Table) I have to validate against the Master table (Manufacturer Parts Master Table) with the key combination of Manufacturer Name + Manufacturer Part No and that this key combination must exists in the 1st table.( Manufacturer Parts Master Table.). If not then it is an error.
I know we can use the 1st table as lookup main table for the 2nd table but do we need to combine the key fields Manufacturer Name + Manufacturer Part No for both the tables to validate against the Manufacturer Parts Master table with the same key combination?.
Anyone explains how I can do this?
Also, Qualified tables still exits in MDM 7.1? OR we have to use Tuples?Hi,
1. Manufacturer Parts Master Table and the key is Manufacturer Name + Manufacturer Part No (Two fields)
In Console: Say your 1st main table has Manufacturer Name + Manufacturer Part. No two fields which are Display fields. For this 1st Main table you should have your Edit Key mapping = Yes.
In Import Manager: Your Remote Key in your MDM import Manager should be mapped with combination of these two fields using Partition Concept with some delimiter say ,
e.g. for 1 record in your 1st main table when you right click on your Edit key mapping using MDM data Manager it has values as:
RemoteSystem Key
ABC MANF1,123
So here Key is combination of Manufacturer Name + Manufacturer Part No (MANF1,123) which has delimiter ,
2. I have another Main Table called Manufacturer Parts Table.
In Console: For this 2nd Main table first of all, you will create a Field of type Lookup Main which is lookup to 1st main table say X. You will have some other field too in 2nd main table which is Display field and using it you can import data.
In Import Manager: For 2nd Main table, your source fields again should be combination of Manufacturer Name + Manufacturer Part No using partition field concept with delimiter say , and map this Partition field here with field X which is lookup to main table. when you will do this you will see all your source values for this partition field gets mapped automatically for the records which are present in 1st main table and if there is any value which is not mapped it means that that manufacturer name + manufacturer Part no does not exist in 1st main table.
You must set this property in Import Map, if you are importing data through Import server by right clicking on target mapped field X Set MDIS Unmapped Value handling = Fail which will take care if record exists in 1st main table then only record imported in 2nd main table else give error. As if record exists in 1st main table then while importing data through 2nd main table his value automatically gets mapped.
Also, Qualified tables still exits in MDM 7.1? OR we have to use Tuples?
For most of standard Master's e.g. Material SAP Note 1355137, Customer SAP Note 1412742: Tuple has been replaced using Qualified table. But if you want, you can model data as per your requirement. You can still use Qualified table if business demands.
Regards,
Mandeep Saini -
How to map lookup main table field in another main table using MDM 7.1?
We created a new SAP MDM 7.1 repository with multiple main tables. The first main table is called ProductMaster table which contains Products information. The ProductCode is the primary key and the only display field for the table during data loading process. The second main table is ProductByRegion table which has a main table lookup field ProductCode and a RegionId field. These two fields (ProductCode and RegionId) combine as the PK for this main table. Both main tables have key mapping enabled.
I was able to load ProductMaster table using Import Manager. But Iu2019m having trouble to load data into ProductByRegion table using MDM Import Manager. Although I have met all the 5 requirements below (excerpted from MDM Import Manager Reference Guide P.222), the ProductCode wonu2019t show up on the destination value pane. If I mapped all productCode to NULL field, ProductCode wonu2019t load. If I u2018Addu2019 all ProductCode to Destination Value pane, the Import Manager added duplicated rows to Product Master table while only loading 1 record to ProductByRegion table. I canu2019t get ProductCode show up in Matching Destination Field list. When I checked ProductMaster records in MDM Data Manager, I right-clicked on one of records, chose Edit Key Mappings, it didnu2019t show anything. However, if I right-clicked on one of those duplicated rows, Edit Key Mapping shows remote system and key correctly.
Where did I do wrong? How can I fix the problem?
Thank you for help in advance.
From: SAP MDM Import Manager Reference Guide:
Mapping to Main Table Lookup Destination Fields
Import Manager handles main table lookup fields (Lookup [Main])
differently than other MDM lookup fields. Specifically, Import Manager
does not display the complete set of display field values of the records
of the underlying lookup table. Instead, the values it displays for a main
table lookup field are limited by both the key mappings for the lookup
table and the values in the source file.
Also, Import Manager does not automatically display the values of a
Lookup [Main] destination field in the Destination Values grid when you
select the field in the Destination Fields grid. Instead, for a main table
lookup field value to appear in the Destination Values grid, all of the
following conditions must be met:
u2022 The lookup table must have key mapping enabled
u2022 The lookup field must be mapped to a source field
u2022 The source field must contain key values for the lookup table
u2022 The destination value must have a key on the current remote system
u2022 The destination valueu2019s key must match a source field value
NOTE ►► The current remote system is the remote system that was
selected in Import Manageru2019s Connect to Source dialog (see
u201CConnecting to a Remote Systemu201D on page 416 for more information).
VickyHi Michael,
Thank you very much for your response. I'm new to SAP MDM, I need some clarification and help regarding your solution.
I did use two maps to load ProductMaster and ProductByRegion separately. Here were my steps:
1. create main table ProductMaster with key mapping enabled at the table level and set ProductCode as unique and writable once (primary key).
2. create a map to load ProductMaster record from a staging table located an oracle database. But Key mapping didn't show anything when I looked at them using Data Manager.
3. create main table ProductByRegion with a lookup field looking at ProductMaster table. This field and RegionId combines as a unique field for ProductByRegion table.
4. create a map to load ProductByRegion table. But ProductCode records only shows on the source pane not destination pane and can't be mapped properly.
My questions:
1. How can I "Ensure that you add key mapping info for all ProductMaster records" besides enabling Key Mapping on the table level?
2. How can I define a concatenation of ProductCode and RegionId as a REMOTE KEY"?
Thanks a lot for your help!
Vicky -
Error while inserting value Qualified field in the main table
Hello,
I am trying to populate Qualified field in the main table when a new record is inserted in the Products Repository.
The field is Reference Price and its a qualified lookup field. I am using the below code to create qualified lookup value and create qualified link values.
QualifiedLookupValue qlvRefPrice = new QualifiedLookupValue();
TableId qltabid = repSchema.getTableId("ReferencePrices");
FieldId qlfieldid = repSchema.getFieldId("ReferencePrices","RP_ReferncePrices");
RecordId rdRefPrice = getRecordId(connPool,session,"RP",qlfieldid,qltabid);
HashMap map = new HashMap();
map.put(repSchema.getFieldId("ReferencePrices","StartDate_ReferencePrice"),new DateTimeValue(cal));
map.put(repSchema.getFieldId("ReferencePrices","EndDate_ReferencePrice"),new DateTimeValue(cal));
map.put(repSchema.getFieldId("ReferencePrices","ListPrice"),new FloatValue(Float.parseFloat("123.3")));
map.put(repSchema.getFieldId("ReferencePrices","Currency"),new LookupValue(getLookupRecordId(connPool,session,"Currencies","Currency_Currencies","EUR")));
QualifiedLinkValue qlvLinkValue = MdmValueFactory.createQualifiedLinkValue(rdRefPrice,map);
qlvRefPrice.addValue(qlvLinkValue);
emptyRecord.setFieldValue(fieldIdRefPriceHistory,qlvRefPrice);
However when the createrecord command is executed I get the following error.
java.lang.RuntimeException: No matching validation Id 97. at com.sap.mdm.internal.validation.ValidationInfoHelper.retrieveValidations(ValidationInfoHelper.java:71) at com.sap.mdm.data.commands.CreateRecordCommand.execute(CreateRecordCommand.java:246) at com.alcatel_lucent.productdetail.ProductItemDetail_Comp.createProduct(ProductItemDetail_Comp.java:2927) at com.alcatel_lucent.productdetail.wdp.InternalProductItemDetail_Comp.createProduct(InternalProductItemDetail_Comp.java:656) at com.alcatel_lucent.productdetail.ProductItemAddView.onActionSave(ProductItemAddView.java:971) at com.alcatel_lucent.productdetail.wdp.InternalProductItemAddView.wdInvokeEventHandler(InternalProductItemAddView.java:662) at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87) at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132) at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335) at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:332) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingPortal(ClientSession.java:761) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:696) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:253) at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149) at com.sap.tc.webdynpro.clientserver.session.core.ApplicationHandle.doProcessing(ApplicationHandle.java:73) at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.sendDataAndProcessActionInternal(AbstractApplicationProxy.java:869) at com.sap.tc.webdynpro.portal.pb.impl.localwd.LocalApplicationProxy.sendDataAndProcessAction(LocalApplicationProxy.java:77) at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1356) at com.sap.portal.pb.PageBuilder.SendDataAndProcessAction(PageBuilder.java:327) at com.sap.portal.pb.PageBuilder$1.doPhase(PageBuilder.java:869) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processPhaseListener(WindowPhaseModel.java:755) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doPortalDispatch(WindowPhaseModel.java:717) at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:136) at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335) at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143) at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:332) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:741) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:694) at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:253) at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149) at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62) at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401) at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266) at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386) at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364) at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039) at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265) at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95) at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175) at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33) at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41) at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37) at java.security.AccessController.doPrivileged(AccessController.java:219) at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104) at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
I spoke to my MDM team and they say there is no validation which they have put for Reference Price field. I have tried inserting values in another field of type qualified lookup in the same main table and that works without any issue.
The code is as below:
QualifiedLookupValue qlvRating = new QualifiedLookupValue();
TableId qlvtable = repSchema.getTableId("ProductRatings");
FieldId qlvratinglink = repSchema.getFieldId("ProductRatings","RatingLink");
RecordId rdidPR = getRecordId(connPool,session,"CI",qlvratinglink,qlvtable);
wdComponentAPI.getMessageManager().reportSuccess("rdidPR "+rdidPR);
HashMap mapPR = new HashMap();
mapPR.put(repSchema.getFieldId("ProductRatings","AvailRating"),new LookupValue(getLookupRecordId(connPool,session,"AvailabilityRatings","AvailabilityRating_AvailabilityRatings","CI")));
mapPR.put(repSchema.getFieldId("ProductRatings","EffectiveDate"),new DateTimeValue(cal));
mapPR.put(repSchema.getFieldId("ProductRatings","FERAIndic"),new LookupValue(getLookupRecordId(connPool,session,"ReplacementIndicators","Code","FE")));
mapPR.put(repSchema.getFieldId("ProductRatings","FERAOrdItem"),new LookupValue(getLookupRecordId(connPool,session,"ReplProducts","ProdID","100008200")));
QualifiedLinkValue qlvLink = MdmValueFactory.createQualifiedLinkValue(rdidPR,mapPR);
qlvRating.addValue(qlvLink);
emptyRecord.setFieldValue(fieldIdRatingHistory,qlvRating);
I would really appreciate if someone can help in solving the issue.
Thanks in advance,
AamodHi Aamod,
Sees that some validation/assignments are getting triggered as soon as you make changes to the record in MDM. Please check once after removing validations/workflow that you may have. This way you may debug the issue.
Hope this helps!!
Cheers,
Arafat -
Display many fields of a lookup table in the main table
Hello Experts,
In MDM, I have a "Suppliers" table which is a lookup table. This table has 4 fields :
- Supplier Name (Display Field)
- Supplier Code
- Email
- Phone number
In the main table, a field "Supplier" uses the "Suppliers" lookup table. This fields displays the "Supplier Name" of the "Suppliers" lookup table.
Now I also want to display the "Email" and the "Phone Number" of the supplier. If I set these fields as Display Fields in the "Suppliers" lookup table, they appear concatenated in the main table, which I don't want.
The only way I found to display those fields is to set 2 new fields in the main table as calculated fields, eg: IF(TRUE, Supplier.Email).
Is there any way to display those fields w/o using calculated fields?
Thanks for your helpHi Christian,
Thanks for your help. Actually I am working on the SRM part of MDM, so I do not use portal to display data but the SRM-MDM UI on which I can not manage iViews.
The need is to have, for each Material displayed, the name and the contact data of the Supplier. If I concatenate those data the display is not very clear for the user. Eg:
Supplier data: TOTO, contact_at_toto.com, 1234567890
I would rather have :
Supplier: TOTO
EMail: contact_at_toto.com
Phone Number: 1234567890
As you said, the non automatic update of calculated fields is an issue in my case. So I am currently looking at assignments, which seems to be schedulable via a workflow but I don't know if it's a good mean?
Best regards,
Patrick -
What are the main tables to refer in ASAP(asap 7.2)?
what are the main tables to refer in ASAP(asap 7.2)?
what are the main tables to refer in ASAP(asap 7.2)?
-
How to populate the main table and the lookup's at the same time
Hi ,
What I have with me is the XML files which contain the data from the material master and the excel sheet which talks about the mapping . it basically tells me which field of the main table maps to which field of which segment in the IDOC and also the name of the table and the field in the R3 system .
I wish to use this info to populate the data in the material repository .
- How can I populate the data in the lookup table at the same time when I am populating the main table ? I have only the XML's that correspond to the main table . I don't have seperate data for the lookup tables .
- Can I use the standard maps available for import in the business content of material repository in MDM ?
- If the answer to the second question is NO then I think i can create the maps and save them for future use .
Regards
Deepak SinghHi, Deepak
>>> - How can I populate the data in the lookup table at the same time when I am populating the main table ? I have only the XML's that correspond to the main table . I don't have seperate data for the lookup tables .
I don't think you can populate both main table and all fields of lookup tables at the same time, i.e. using same map. You can consider 2 options to upload all information you have:
1) If your XML file contains data you would like to upload to lookup tables, you can upload it to MDM lookup tables with several maps using same XML and choosing different sections of that XML corresponding to different MDM lookup tables.
2) Also you can upload main table simultaneously with lookup table entries (using same map), but in this case new lookup table entries will only contain display field values that you mapped. To do this you should use 'Add' value mapping functionality for fields that you mapped to lookup tables.
>>>- Can I use the standard maps available for import in the business content of material repository in MDM ?
1) In case you have material master repository delivered by SAP and you use XML files which structure corresponds to SAP predelivered XSD schemas then you can use these maps undoubtedly.
2) If your repository is based on SAP predelivered, but you changed it ,you should adjust these maps due to differences in repository structure and XML files structure.
3) If you created your repository from scratch you should consider option of making your own import maps.
Regards,
Vadim Kalabin -
Table somehow "removed" itself from main table.
I am a novice and have learned the basics of html in order to update my company's website and add new pages as they become necessary. In order to add the new pages, I have basically copied and pasted the code into DW, deleted the parts I don't need and added in the new stuff. I needed to add a link to a line of links at the bottom of the page, went through each page and put in identical code. The site has about 10 pages, and all but one look the way they should. Everything else looks great.
The one that went rogue has a footer which is in a larger font, is way over to the left (even though everything else is centered), and the line that runs across the top of this area (a .jpg) is too short. I have checked and checked the code and compared to other correct pages, and can not find a difference. The only difference I can see is when I view the split screen, and in the design view the main table (normally) will extend to the bottom of the page and the table which contains the footer is inside of this. On the one rogue page, the footer is below the main table and I can not seem to be able to get it to go back into the main table.
So I have two questions:
1) The "drag and drop" only deletes the code as far as I can tell, so how do I get this footer back into the main table (which is justified correctly)?
2) I am anticipating a lot of "add the code inside the table" responses, but I can not figure out which tags deal with which tables (this is part of the problem I think). Is there a way to search the code in DW and find only the related tags? (ie. if I find a </table> tag can I search for the <table> tag that corresponds to this without having to print out and search through the code by hand?)
Any help would be greatly appreciated! If you need additional information, I will do my best to provide it.
Thank you,
dingophil1) The "drag and drop" only deletes the code as far as I can tell, so how do I get this footer back into the main table (which is justified correctly)?
By placing the code back into the table! 8) This is where a knowledge of HTML (and ultimately CSS is absolutely essential). However a bit of knowledge about DW can help alot. For example if you click in one of the table cells in design view, then click on the right-most <table> tag on the Tag Selector (at the bottom of the document pane), you will see all the code for THAT TABLE highlight. This gives you a way to easily find which <table> tag belongs where. But I'm not sure what you mean by 'only deletes the code' in your comment above - if you mean that dragging and dropping somehow deletes code then you are mistaken.
The best way to solve your problem here would be to post a link to the recalcitrant page so we can see it and its code. You'll have your answer in a jiffy. -
What are the main tables for BOM (Bill of Materials)
Hi Gurus,
I need to know the tables involved in BOM (Bill of Materials) for Oracle EBS.
Can anyone point out the list of related tables?
ThanksHi Sudipta,
Following are the BOM main tables.
bom_bill_of_materials
bom_inventory_components
bom_reference_designators
bom_substitute_components
mtl_item_revisions
bom_operational_routings
bom_operation_sequences
bom_operation_resources
BOM_BILL_OF_MTLS_INTERFACE
BOM_INVENTORY_COMPS_INTERFACE
BOM_REF_DESGS_INTERFACE
BOM_SUB_COMPS_INTERFACE
MTL_ITEM_REVISIONS_INTERFACE
BOM_OP_ROUTINGS_INTERFACE
BOM_OP_SEQUENCES_INTERFACE
BOM_OP_RESOURCES_INTERFACE
MTL_RTG_ITEM_REVS_INTERFACE
=======================
Following are all tables of BOM.
BOM_ALTERNATE_DESIGNATORS
BOM_ALTERNATE_DESIGNATORS_TL
BOM_ATO_CONFIGS_TEMP
BOM_ATO_CONFIGURATIONS
BOM_BILLS_HEADER_TEMP
BOM_BILL_OF_MATERIALS
BOM_BILL_OF_MATERIALS_ARCHIVE
BOM_BILL_OF_MATERIALS_TEMP
BOM_BILL_OF_MTLS_INTERFACE
BOM_BILL_REVISIONS_B
BOM_BILL_REVISIONS_TL
BOM_CALENDARS
BOM_CALENDAR_DATES
BOM_CALENDAR_EXCEPTIONS
BOM_CALENDAR_SHIFTS
BOM_CAL_WEEK_START_DATES
BOM_CAL_YEAR_START_DATES
BOM_CMP_USR_ATTR_INTERFACE
BOM_COMPARISON_TEMP
BOM_COMPONENTS_B
BOM_COMPONENTS_EXT_B
BOM_COMPONENTS_EXT_TL
BOM_COMPONENT_COLUMNS
BOM_COMPONENT_OPERATIONS
BOM_COMPONENT_OPS_INTERFACE
BOM_COMPONENT_TYPES
BOM_COMP_OPTCLASS_TEMP
BOM_COMP_OPTIONS_TEMP
BOM_CONFIG_EXPLOSIONS
BOM_COPY_ORGANIZATION_LIST
BOM_COPY_STRUCTURE_ACTIONS
BOM_COPY_STRUCTURE_REQUEST
BOM_CTO_MLSUPPLY_MAIN_TEMP
BOM_CTO_MODEL_ORGS
BOM_CTO_ORDER_DEMAND
BOM_CTO_ORDER_LINES
BOM_CTO_ORDER_LINES_UPG
BOM_CTO_OSS_COMPONENTS
BOM_CTO_OSS_ORGS_LIST
BOM_CTO_SRC_ORGS
BOM_CTO_SRC_ORGS_B
BOM_DELETE_ENTITIES
BOM_DELETE_ERRORS
BOM_DELETE_GROUPS
BOM_DELETE_SQL_STATEMENTS
BOM_DELETE_SUB_ENTITIES
BOM_DEPARTMENTS
BOM_DEPARTMENT_CLASSES
BOM_DEPARTMENT_RESOURCES
BOM_DEPENDENT_DESC_ELEMENTS
BOM_DEPEND_DESC_ELEM_ARCHIVE
BOM_DEPT_RES_INSTANCES
BOM_EAM_DEPT_APPROVERS
BOM_EXCEPTION_SETS
BOM_EXCEPTION_SET_DATES
BOM_EXCLUSION_RULE_ARCHIVE
BOM_EXCLUSION_RULE_DEF
BOM_EXPLOSIONS
BOM_EXPLOSIONS_ALL
BOM_EXPLOSION_TEMP
BOM_FORM_QUERY
BOM_IMPLOSION_TEMP
BOM_INTERFACE_DELETE_GROUPS
BOM_INVENTORY_COMPONENTS
BOM_INVENTORY_COMPONENTS_TEMP
BOM_INVENTORY_COMPS_ARCHIVE
BOM_INVENTORY_COMPS_INTERFACE
BOM_INV_COMPONENTS_TEMP
BOM_ITEM_ATTACH_CATEGORY_ASSOC
BOM_ITEM_BACKFLUSH_SUBINV
BOM_LISTS
BOM_LOW_LEVEL_CODES
BOM_MIXED_MODEL_MAP_CELLS
BOM_MIXED_MODEL_MAP_HEADER
BOM_MIXED_MODEL_MAP_PROCESSES
BOM_MIXED_MODEL_MAP_RES
BOM_OPERATIONAL_ROUTINGS
BOM_OPERATION_NETWORKS
BOM_OPERATION_RESOURCES
BOM_OPERATION_RESOURCES_EFC
BOM_OPERATION_SEQUENCES
BOM_OPERATION_SEQUENCES_TEMP
BOM_OPERATION_SKILLS
BOM_OP_NETWORKS_INTERFACE
BOM_OP_RESOURCES_ARCHIVE
BOM_OP_RESOURCES_INTERFACE
BOM_OP_ROUTINGS_ARCHIVE
BOM_OP_ROUTINGS_INTERFACE
BOM_OP_SEQUENCES_ARCHIVE
BOM_OP_SEQUENCES_INTERFACE
BOM_PARAMETERS
BOM_PERIOD_START_DATES
BOM_REFERENCE_DESGS_ARCHIVE
BOM_REFERENCE_DESIGNATORS
BOM_REF_DESGS_INTERFACE
BOM_RESOURCES
BOM_RESOURCES_EFC
BOM_RESOURCE_CHANGES
BOM_RESOURCE_DOWNCODES
BOM_RESOURCE_EMPLOYEES
BOM_RESOURCE_EQUIPMENTS
BOM_RESOURCE_FLEX_FENCES
BOM_RESOURCE_SETUPS
BOM_RESOURCE_SHIFTS
BOM_RES_INSTANCE_CHANGES
BOM_RTGHEADER_TEMP
BOM_RTG_ITEM_REVISIONS_ARCHIVE
BOM_RTG_NETWORK_TEMP
BOM_RTG_OPERATION_TEMP
BOM_RTG_OPER_RES_TEMP
BOM_RTG_RESOURCE_TEMP
BOM_RTG_SUB_RESOURCE_TEMP
BOM_RULES_B
BOM_SETUP_TRANSITIONS
BOM_SETUP_TYPES
BOM_SHIFT_DATES
BOM_SHIFT_EXCEPTIONS
BOM_SHIFT_TIMES
BOM_SMALL_EXPL_TEMP
BOM_SMALL_IMPL_TEMP
BOM_STANDARD_OPERATIONS
BOM_STD_OP_BONUS_CODES
BOM_STD_OP_RESOURCES
BOM_STD_OP_RESP_EXCLUSIONS
BOM_STD_OP_SCRAP_CODES
BOM_STD_SUB_OP_RESOURCES
BOM_STRUCTURES_B
BOM_STRUCTURES_EXT_B
BOM_STRUCTURES_EXT_TL
BOM_STRUCTURE_EXT_B
BOM_STRUCTURE_REVISIONS_B
BOM_STRUCTURE_REVISIONS_TL
BOM_STRUCTURE_TYPES_B
BOM_STRUCTURE_TYPES_TL
BOM_SUBSTITUTE_COMPONENTS
BOM_SUBSTITUTE_COMPS_ARCHIVE
BOM_SUB_COMPS_INTERFACE
BOM_SUB_OPERATION_RESOURCES
BOM_SUB_OPERATION_RESOURCE_EFC
BOM_SUB_OP_RESOURCES_INTERFACE
BOM_WORKDAY_PATTERNS
HTH
Sanjay -
Can't find the topics from the main table of contents
I need urgent help. I am still running RH 8 for Word (2007). I published the entire project. When testing the main table of contents, the books and topics appear as expected, but when I try to go to any of the topics I get the message:
The topic does not exist. Contact your application vendor....
From the individual projects I can see the topics. When I publish them and view the contents all seem to work fine, but it does not when viewing the entire project from the main table of contents.
The main project looks as follows:Tried that and still have the problem. The RH help lists the following workaround for the error
message :
To workaround this WinHelp viewer limitation, you can either manually insert the Help filename statement on every page of the external CNT file or allow RoboHelp to automatically do it for you:
1 Open the Help file containing the included external CNT file.
2 From RoboHelp Explorer’s File menu, select Project Settings.
3 Select the Contents tab.
4 Select the Include Help filename with pages option. When you save the TOC file, this option automatically places the "@helpfilename.hlp" inside the CNT file on every page.
5 Click OK.
6 Save the external CNT file.
7 Recompile the Help project
I went to the main index project which contains the external cnt file and tried to select the contents tab (no such tab in the project settings). Then I went to the actual project, and again, selected Project Settings there is no Contents Tab. Is there any other way to get that contents tab?
This is how my screen looks like:
eangel -
Footer needs to pull data from main table
Hi Gurus,
I need to have a footer which displays the value of a tag from the main table in BI publisher. The main table in the BI Publisher has the customer information and the address information of the customer needs to print on the footer of the page that displays the customer. This address would change for each customer. There must be a way to do this. I searched through the BI Publisher forum but couldnt find any way to do this. Could you pls help.
Thanks,
Swarnahi Paolyn,
We can't insert data's from table using publisher desktop
just double click on the footer part and added the data with the following format
<?CUSTOMERNAME?>
<?CUSTOMERNUMBER?>
The tag value should be in upper case
then close the footer and try that
Thanks,
Maybe you are looking for
-
HRSSA Email Notifications shows Junk Characters for Arabic
We have R12 Oracle ERP RDBMS : 11.1.0.7.0 Oracle Applications : 12.1.1 We are getting email notifications from Self Service (HRSSA), it shows junk characters in the body of the email, wherever we have arabic characters. Where as in Subject of the ema
-
How system calculate the required qty. after MRP RUN
Hi, I want to know if we are using MRP Type as PD and also we are calculating automatic saftey stock and re order point qty. after MRP RUN according to which rule formula system calculate the safty stock, reorder point qty. and the required qty. as a
-
How to indetify key pair in Java?
Hello I need only to know if some private and public key generating one key pair. I don't want to try it through encrypt/decrypt process and checking data. Thanks
-
Dyld: shared cached file was build against a different libSystem.dylib?
Hi i have a strange error when i open terminal or the console: dyld: shared cached file was build against a different libSystem.dylib, ignoring cache. so i know how to repair this so i did: sudo update_dyld_shared_cache -force And when i did that, i
-
I have got a problem with bridge cs6. RAW pictures from canon EOS 6 wil not shown. I only see the sign CR" and the name of the file. But i can open the pictures in camera raw. I am working with windows 7, 64 bit, photoshop is updated (13.0.1), camera