Query: XMLPayload vs TextPayload in Module
Hi Experts,
I'm a newbie to PI/XI. I've just started reading about modules and got a query about the XMLPayload and TextPayload? Could any of you describe when (in which scenario) to use what (Textpayload or XMLPayload)? Does Textpayload contains the whole payload as a string (with XML tags included)? Can XML operations (using DOM/SAX parser) be performed only on XMLPayload and not on TextPayload?
Please throw more light on this and attachments.
Thanks in advance.
Thanks,
Hussain.
XMLPayload is a subclass of TextPayload, which is a subclass of Payload.
You can always use XMLPayload. See this example:
https://www.sdn.sap.com/irj/scn/wiki?path=/display/xi/adaptermoduleexampleforPI+7.0
Similar Messages
-
Creation of SQL query at runtime in Application Module
jdev 11.1.1.5.0 groups
here i learned that how to use sql query at runtime http://jjzheng.blogspot.in/2010/11/run-single-query-in-application-module.html
. but here values are passing are straightly instead of using bind vairiable means
how to use that.
can anyone come up with an same example as blog shown
Edited by: subu123 on Apr 18, 2012 3:15 AMcan anyone help me..
i tried like this
public String xxxyy(String xbu , String xid){
String sql = "SELECT OPTION FROM xx_NOTES where xx_BU = ? AND xx_id = ? ";
ResultSet rs;
BigDecimal payAmt= null;
try
rs = getDBTransaction().createStatement(0).executeQuery(sql);
if(rs.next())
payAmt=(BigDecimal)rs.getObject(1);
catch(SQLException e)
e.printStackTrace();
return payAmt.toString();
ava.sql.SQLException: ORA-01008: not all variables bound
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:476)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:204)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:540)
at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:202)
at oracle.jdbc.driver.T4CStatement.executeForDescribe(T4CStatement.java:919)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1261)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1419)
at oracle.jdbc.driver.OracleStatement.executeQuery(OracleStatement.java:1668)
at oracle.jdbc.driver.OracleStatementWrapper.executeQuery(OracleStatementWrapper.java:432)
at model.AppModuleImpl.generatenum(AppModuleImpl.java:46)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at oracle.adf.model.binding.DCInvokeMethod.invokeMethod(DCInvokeMethod.java:648)
at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:2142)
at oracle.adf.model.bc4j.DCJboDataControl.invokeMethod(DCJboDataControl.java:3063)
at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:261)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1635)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2149)
at oracle.jbo.jbotester.panel.MethodPanel$6.actionPerformed(MethodPanel.java:313)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6289)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6054)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4652)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlCon
text.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:617)
at java.awt.EventQueue$2.run(EventQueue.java:615)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
[54] DCBindingContainer.reportException :oracle.jbo.JboException
[55] oracle.jbo.JboException: JBO-29000: Unexpected exception caught: java.lang.NullPointerException, msg=null
at oracle.adf.model.binding.DCInvokeMethod.invokeMethod(DCInvokeMethod.java:690)
at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:2142)
at oracle.adf.model.bc4j.DCJboDataControl.invokeMethod(DCJboDataControl.java:3063)
at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:261)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1635)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2149)
at oracle.jbo.jbotester.panel.MethodPanel$6.actionPerformed(MethodPanel.java:313)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6289)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6054)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4652)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:617)
at java.awt.EventQueue$2.run(EventQueue.java:615)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
[54] DCBindingContainer.reportException :oracle.jbo.JboException
[55] oracle.jbo.JboException: JBO-29000: Unexpected exception caught: java.lang.NullPointerException, msg=null
at oracle.adf.model.binding.DCInvokeMethod.invokeMethod(DCInvokeMethod.java:690)
at oracle.adf.model.binding.DCDataControl.invokeMethod(DCDataControl.java:2142)
at oracle.adf.model.bc4j.DCJboDataControl.invokeMethod(DCJboDataControl.java:3063)
at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:261)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1635)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2149)
at oracle.jbo.jbotester.panel.MethodPanel$6.actionPerformed(MethodPanel.java:313)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6289)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6054)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4652)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4482)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
at java.awt.EventQueue.access$000(EventQueue.java:85)
at java.awt.EventQueue$1.run(EventQueue.java:603)
at java.awt.EventQueue$1.run(EventQueue.java:601)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:617)
at java.awt.EventQueue$2.run(EventQueue.java:615)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122) -
Ad-Hoc Query Field using HR_99S_INTERVAL_BETWEEN_DATES function module
I have created an additional field in Sq02 to calculate years between two dates and am using function module HR_99S_INTERVAL_BETWEEN_DATES.
There are no syntax erros but when I run a query in Sq01 and output the field it doesn't calculate instead gives "00000" output.
The field Code in the additional field
Clear ZHR_SERVICEYRS.
DATA: V_MONTHS TYPE i.
DATA: V_YEARS TYPE i.
DATA: V_MONTHS1 TYPE char20.
DATA: V_YEARS1 TYPE char20.
CALL FUNCTION 'HR_99S_INTERVAL_BETWEEN_DATES'
EXPORTING
BEGDA = P0002-GBDAT
ENDDA = Sy-Datum
TAB_MODE = ' '
IMPORTING
DAYS =
C_WEEKS =
C_MONTHS = V_MONTHS
C_YEARS = V_YEARS
WEEKS =
MONTHS =
YEARS =
D_MONTHS =
MONTH_TAB =
V_MONTHS1 = V_MONTHS.
V_YEARS1 = V_YEARS.
CONCATENATE V_YEARS1 '.' V_MONTHS1 INTO ZHR_SERVICEYRS.
condense ZHR_SERVICEYRS.
has anybody had similar problems! Help Appreciated!Hi Anuj,
Yes, you use Transaction Code SQ02. Find your infoset on the list - if you want to create a new infoset you can do so. If it is an existing infoset, select it and Change. On the next screen you will see all the infotypes in that infoset on the left. The fields available for Ad Hoc are on the right. Open the infotype table on the left and the field group on the right. If the field is not included in the field group all you have to do is drag and drop from the list on the left to the correct field group. If the infotype is not already in your infoset, select Edit --> Change Infotype Selection from the top menu bar. Place a check in the new infotype and then return and do the drag and drop if necessary. You will find the basic fields already moved to the field group.
You say you want information from IT0008-Basic Pay and IT1005-Planned Compensation. Problem is that if you use the standard HR logical data base, there is no link directly between a person and IT1005. IT1005 is assigned to a Position or a Job. If it is assigned to a Position, you can select the "Change Infotype Selection" action and ago to the bottom of the list to Related Objects. Here select Position and open that to find the IT1005. If the IT1005 is tied to the Job, there is no direct link. Thus, if it does not already exist, you will need to create an infoset based on the PCH logical database and object Position. Now you can link that Position to "Holder"-Person and "Described by"-Job. Again, select the infotypes and fields you want and you will be able to obtain your information via Ad Hoc Query based on that infoset.
Paul -
Query About the SAP ABAP Module
Hello My name is Anuj Chaturvedi. I have doing a MCA Course(VITH semester). I want to do a SAP ABAP Module. So Please suggest me that ii is gud for me? Also tell me something more about the ABAP Module. Kindly reply me soon.
Thanks
Anuj ChaturvediHello My name is Anuj Chaturvedi. I have doing a MCA Course(VITH semester). I want to do a SAP ABAP Module. So Please suggest me that ii is gud for me? Also tell me something more about the ABAP Module. Kindly reply me soon.
Thanks
Anuj Chaturvedi -
How to Query serial numbers on VXI smip modules.
I'm trying to write a program in C# that will query the VXI SMIP Switch Modules for their serial numbers. Right now I am able to view all the serial numbers through the soft front panel provided with the drivers but I need to automate this process and extract the serial numbers for further processing so I need to access the modules directly and read the data.
My current Setup:
[Computer with PCI-MXI-2 Board] ------> [ Racal Chassis with "SM1000E double wide Carrier" that can hold 6 VXI SMIP switch module plugin cards]
I'm able to see all resources in NI MAX.
The VXI resource is shown in NI MAX as : VXI0::26::INSTR
The VXI SM1000E Carrier that holds the 6 plugin module has logical address 26
and there are 6 modules in there carrier that is 0 based, module 1 is 0, module 2, is 1, module 3, is 2 and so on...
To my understanding, Visual Studio can automatically create wrapper code using the "Driver Wrapper Wizard" included with the T&M ToolKit. And by doing this I was able to access some of the functions of the drivers associated with this module.
I'm trying to use the vtvmSmip_QuerySmip function, which will return the NonVol data for up to six plug-in cards at once according to the documentation in the driver header file. The definition of the SMiP NonVol structure can be found in the vtvmSmip.h file. But I'm still unsure how to use it.
Using Visual Studio 2003, the function is available but it requires some arguments.
Below is the wrapper code generated.
[code]
private void button1_Click(object sender, System.EventArgs e)
// This code creates and initializes an instance of the VXIplug&play wrapper class
// TODO: Insert your appropriate values for address, idQuery etc.
Agilent.TMFramework.InstrumentDriverInterop.VxipnpWrappers.VtvmSmip myVtvmSmip;
myVtvmSmip = new Agilent.TMFramework.InstrumentDriverInterop.VxipnpWrappers.VtvmSmip("GPIB0::7::INSTR", true, true);
// TODO: Add your code here. For example:
// myVtvmSmip.Reset();
[code end]
I was wondering if, I want to use myvtvmSmip.QuerySmip(); What should I pass in as the arguments? This fuction suppose to return all 6 modules information. not sure how...
Its definition is as follows:
void VtvmSmip.QuerySmip(int smipStruct)
"smipStruct points to the locaton where the data is to be sotred. The Structure is of type vtvmSmip_SMIP_TYPE. Look in vtSmipDefs.h for the definition of vtvmSmip_SMIP_TYPE. Note: The Plug&Play spec prohibits exporting data structures, so the structure is not exported."
s
I get and exception when I use this as:
myVtvmSmip.QuerySmip(1);
didnt work gave me exception..
Another fuction I coulduse was this one.
myVtvmSmip.ReadNonvol();
I guess this returns 1 module at a time.
Definition:
voidVtvmSmip.ReadNonvol(short smodNmbr, System.Text.StringBuilder nvData)
I suppose smodnmbr responds to each module, 0, 1, 2, 3, 4, and 5.
I hope this isnt too much information.. I just want to be able to read the serial numbers of of these switch modules so I can process them. If anyone can help, that would be great. Thanks.
ChanHi Matt,
Thanks for your replay. Right now im trying to query the VXI Tech SMP1200 double slot carrier that holds 6 SMP5004 modules. But I have other SMP switches as well after I figure this one out, I belive if I can do this one, they should be the same for the other switches.
SMP1200 Product Link:
http://www.vxitech.com/ProductDescription.aspx?PID=218
SMP5004 Product Link:
http://www.vxitech.com/ProductDescription.aspx?PID=242
I belive I have the drivers from the manufacturer. When I try to implement the code below, I get an exception error.
The logical address of the SMP1200 Carrier is 26. And it has a resource name of "VXI0::26::INSTR" as should in NIMAX.
The SMP1200 holds 6 switch modules and I think its zero based ( Module 1 is 0, Module 2 is 1, Module 3 is 2 etc..up to 5)
reading through the vtSmipDefs.h file included with the drivers, It says QuerySmip() returns information about 6 modules at once.
ReadNonvol() reads one module at a time I belive. Not sure how this works because using these functions, they dont return a value. I don't know If I have to somehow read it back.
[CODE]
private void button1_Click(object sender, System.EventArgs e)
// This code creates and initializes an instance of the VXIplug&play wrapper class
// TODO: Insert your appropriate values for address, idQuery etc.
Agilent.TMFramework.InstrumentDriverInterop.VxipnpWrappers.VtvmSmip myVtvmSmip;
myVtvmSmip = new Agilent.TMFramework.InstrumentDriverInterop.VxipnpWrappers.VtvmSmip("VXI0::26::INSTR", true, true);
// TODO: Add your code here. For example:
// myVtvmSmip.Reset();
myVtvmSmip.QuerySmip(1);
[CODE}
The code above is automatically generated using the built in Agilent T&M Toolkit driver wrapper wizard in the menu in Visual Studio 2003. using this code, the intellisense menu does appear to show all the class members functions from the driver.
When I run the program, I get an exception error.
Ill post the exact data as soon as im back at work.
I can also send you a link to the drivers and the help files that have some information about it.
Im kinda a newbie here with programming in C# and also VXI/MXI. This is just part of my whole application im writing. So far I've been able to query all the instruments(meters, scopes, etc) through the GPIB using IDN query so far. Just the VXI left and its killing me. Appreciate you help. Look forward to your reply.
Thanks Chan -
How to pass BI Query parameters from Function Module
Hi,
We are executing the BI queries using the Function Module "RS_VC_GET_QUERY_VIEW_DATA_FLAT" by passing the query name and the provider information.
Is there a way, to pass the filter parameter values also to the query by using this function module? I am not sure how the VC tool is using this Function Module to call the BI queries and passing the filter values.
Your help is appreciated.
Thanks
SuriSuryanarayana,
Are you trying to execute a query in batch?. If you want to execute try to look at WRITEQUERY - which is a standard SAP program. You can execute this program directly or you can customize it completely and produce the output in .CSV file.
Hope this helps. Award points if useful.
Goodluck,
Alex (Arthur Samson) -
Querying a BAPI Function Module
Is it possible to write a query on the BAPI Function Module. For example I have a views in oracle database and i can query the views based on some condition and get the required data from the views. In the same way is it possible to query the BAPI function module to get the data based on given condition
Hi Nikki,
You can use FM RFC_READ_TABLE to read data from any SAP table.
Also check following post by Raja -
RFC_READ_TABLE for SAP Web AS - Code Sample
Cheers,
Sanjeev -
Call of a query bex from a module function BW
Hi,
I have to perform call of a query BEX from a BW module function
Is there a way to perform this call ?
Thanksits possible, but what are you going to do with the result
options: 1. use FM RRW3_WEBRFC
this will return results in HTML format
option: 2 use my custom FM which will return results in xml format
/people/durairaj.athavanraja/blog/2005/12/05/execute-bw-query-using-abap-part-iii
option 3: use FM RRW3_GET_QUERY_VIEW_DATA
you have to handle the return data to get it in two dimensional format
Regards
Raja -
SAP R/3 Modules and transactions belonging to them.
Hello there,
I have two questions which I would like some help with:
Q1 Is there a link to documentation that lists all the SAP R/3 functional modules and provides an overview/description of each module?
Q2 I would like to list all the transactions belonging to a fuctional module/area such as SD, MM, PM, FI/CO etc. I know that tables TSTC & TSTCT will provide a list of all the transaction codes, but is there a table that will show all transaction codes belonging to a specific fuctional module?.. if not then is there another way of getting this information?...Please bear in mind that I need to be able to download this information to an excel spreadsheet.
Your help here would be much appreciated.
Many thanks
SharonHi williams,
>> For your query regarding SAP R/3 modules refer: http://en.wikipedia.org/wiki/SAP_R/3
>> For your query regarding Transaction codes refer:
http://www.easymarketplace.de/transactions.php
www.erpgenie.com/sapgenie/docs/useful-tcodes.pdf
Reward points if its useful... -
Hi
We are trying to execute a BW query using the RRW3_GET_QUERY_VIEW_DATA function module but when I test the function module I'm getting the data expected.
My query is a simple query returning the cost center hierarchy that my authorizations give me access to). I fill the import parameters I_INFOPROVIDER and I_QUERY and leave I_VIEW_ID and I_T_PARAMETER empty. When I execute the function module I only get zeros in the E_CELL_DATA export parameter. The query works fine, when I execute it through the Query Analyzer.
Any ideas what I might be doing wrong?
We are using a BW 3.5 SP19
Regards,
Jacob VennervaldOK, I have found out that the reason I didn't get any data was that I didn't have any key figures in the query. This might sound strange but I'll try to explain.
What I want to do is to create a query that will return the cost center hierarchy that a specific user has access to. This hierarchy is in the infoobject 0COSTCENTER and I though I could just make a query with this infoobject in it and then fetch the result of this query in ABAP using FM RRW3_GET_QUERY_VIEW_DATA, but apparently that is not possible.
Is there another way to get contents of the infoobject into the query?
Is there a way to fetch the contents of the infoobject from ABAP?
Regards,
Jacob -
Major query performance differnce between oracle 8 and 9
Hello, I have the following query
select distinct UPPER(rf.module), ruf.rpt_seq
from role_func rf, rd_url_func ruf
where role_name = 'ADMIN'
and UPPER(rf.module) not in (select UPPER(ruf.module)
from role_func rf2, rd_url_func ruf2
where UPPER(ruf2.module) = UPPER(rf.module)
and UPPER(rf2.module(+)) = UPPER(ruf2.module)
and rf2.url(+) = ruf2.url
and rf2.role_name(+) = 'ADMIN'
and rf2.url is null)
and UPPER(rf.module) = UPPER(ruf.module)
and ruf.rpt_seq = (SELECT min(rpt_seq)
FROM rd_url_func ruf3
WHERE ruf3.module = ruf.module)
order by ruf.rpt_seq; Now on Oracle 8, this executes almost instantly. On oracle 9, however, this takes a very long time (around 30 seconds?) In both databases I have the same data. Also none of the tables are extremely large- they both contain only about 400 rows. Any suggestions on what could be causing this difference, or at least how I can find out the problem?
Thanksok does this help:
explain plan for select distinct UPPER(rf.module), ruf.rpt_seq
from role_func rf, rd_url_func ruf
where role_name = 'ADMIN'
and UPPER(rf.module) not in (select UPPER(ruf.module)
from role_func rf2, rd_url_func ruf2
where UPPER(ruf2.module) = UPPER(rf.module)
and UPPER(rf2.module(+)) = UPPER(ruf2.module)
and rf2.url(+) = ruf2.url
and rf2.role_name(+) = 'ADMIN'
and rf2.url is null)
and UPPER(rf.module) = UPPER(ruf.module)
and ruf.rpt_seq = (SELECT min(rpt_seq)
FROM rd_url_func ruf3
WHERE ruf3.module = ruf.module)
order by ruf.rpt_seq;
select
substr (lpad(' ', level-1) || operation || ' (' || options || ')',1,30 ) "Operation",
object_name "Object"
from
plan_table
start with id = 0
connect by prior id=parent_id;this is from oracle 8 where it executes fast:
Operation Object
SELECT STATEMENT ()
SORT (UNIQUE)
FILTER ()
HASH JOIN ()
TABLE ACCESS (FULL) RD_URL_FUNC
TABLE ACCESS (FULL) ROLE_FUNC
FILTER ()
FILTER ()
NESTED LOOPS (OUTER)
TABLE ACCESS (FULL) RD_URL_FUNC
TABLE ACCESS (BY INDEX R ROLE_FUNC
INDEX (UNIQUE SCAN) RFUN_PK
SORT (AGGREGATE)
TABLE ACCESS (FULL) RD_URL_FUNCthis is from oracle 9 where it executes slow
Operation Object
SELECT STATEMENT ()
SORT (UNIQUE)
FILTER ()
SORT (GROUP BY)
FILTER ()
HASH JOIN ()
TABLE ACCESS (FULL) ROLE_FUNC
HASH JOIN ()
TABLE ACCESS (FULL) RD_URL_FUNC
TABLE ACCESS (FULL) RD_URL_FUNC
FILTER ()
FILTER ()
NESTED LOOPS (OUTER)
TABLE ACCESS (FULL) RD_URL_FUNC
TABLE ACCESS (BY INDEX ROLE_FUNC
INDEX (UNIQUE SCAN) RFUN_PKcan someone help interpret the difference between the execution plan, and how to make oracle use the first one on oracle 9? -
Well, I am newbie in JSF development and I would like to post a query regarding authentication and login module.
My work is done over NetBeans 6.0.1 environment using glassfish and derby services.
I tried to find resources online, but the only results I found were about xml invocation and configuration files.
How can I deploy my database service for the web authentication?
Thank you for you time.
Appreciated.Hi,
you have three options: You can try to develop apllication-managed authentification oder to use a container-managed authentification.
Container-managed authentication means security from your application server, for example. You can write an own LoginModule. Look at Sunt Tutorial for developing of CustomRealms.
Another option is appplication-managed authentification. You can it achieve with JAAS (Java Authentication AND Authorization Service). There are a lot of tutorials to implement it.
The third way is, to develop a JSF-Managed-Bean which compare username and password from a login-page. The managed bean ask your database for the values to authenticate the user.
By the way: JAAS is the base to develop CustomRealms for container-manged security -
Query running backgroup how to download result to specified directory?
Hi Expert,
according to the current business requirement, I have create a query via SQ02 AND SQ01 and it runs smoothly, but now the user want to run this query periodically every 10 mins and want to write the result into spicified dirctory in the desktop.
I write a ABAP code in the query and use the function module GUI_DOWNLOAD, it works in online execution, but when I schedule this query as background, the system can not download the result into specified directory and the system prompts error:FES--022.
do you have any good idea?
thank you in advance!xioliu,
I don't think that is possible as long as it is executed in the background. Options for the background will be 1) to send an e-mail from the program with attachment, or 2) save it into SAP Server and pull that via ftp into whatever the server the user has access to.
Cheers,
Akio -
How to query a FieldPoint FP-2010 from Linux
Hello,
I want to query and control a FieldPoint Module FP-2010 (and some
connected modules like FP-AI-110 ...) from Linux. Referring to Document
ID 181A6Q8U this should be possible somehow. Unfortunally I didn't find
an example VI from which I can learn what to do. I just want to read a
channel from a FP-AI-110 or write a value to a FP-DO-403. Are there any
tutorials that show me what I must do under Linux?
Thanks in advance for your help,
Armin Herzer
Hochschule Ravensburg-Weingarten
University of Applied Sciences
GermanyHere you can find information concerning this topic:
http://digital.ni.com/public.nsf/websearch/C87C7D6E4EDA4348862565DA005E7359?OpenDocument
So you have to use a Windows machine to write and download your RT-Application to the (C)Fieldpoint Controller. You have to implement a TCP/IP Communication on the fieldpoint-side. Via TCP/IP you can communicate from linux with the fieldpoint system.´
But to make it clear: You will need a windows machine with LabView and LabVIEW RT to program and download the RT-application to your fieldpoint system. You can not do thsi from a linux machine. -
HOW to ADD F4 help to a field on SCREEN (MODULE POOL)
Hi,
How to add f4 help to a field in screen ..plz help
Regards,
SalehaHi Saleha,
In order to add F4 help to a field in modeule pool follow these steps:-
1. First go to SE11 and create your own search help( if you dont know how to create a search help please feel free to ask me, it is very easy).
2. Now in your module pool program program go to the layout of your screen.
3. Now when you see the attributes of this field in the Dict tab you will find the field Search Help. Now here you can specify the name of the search help you created in SE11.
There is also another mehtod to create the dynamic search help. eg:- in a posted document data get the Document nos related to that company code.
The sample code is like this:-
First of all declare the module below in the flow logic of your screen then create it in your main program.
You declare the module in the PROCESS ON VALUE-REQUEST.
PROCESS ON VALUE-REQUEST.
FIELD TXT_DOCNO MODULE VALUE_BELNR.
You also need to create an internal table where you wil store results of the select query fired below in the module.
here you will get a F4 help on the filed Document Number(TXT_DOCNO) based on the field Company code (TXT_CODCO)
MODULE VALUE_BELNR INPUT.
progname = sy-repid.
dynnum = sy-dynnr.
CLEAR: field_value, dynpro_values.
field_value-fieldname = 'TXT_CODCO'.
APPEND field_value TO dynpro_values.
CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
EXPORTING
tabname = 'BKPF'
fieldname = 'BUKRS'
dynpprog = progname
dynpnr = dynnum
dynprofield = 'TXT_CODCO'.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = progname
dynumb = dynnum
translate_to_upper = 'X'
TABLES
dynpfields = dynpro_values.
READ TABLE dynpro_values INDEX 1 INTO field_value.
SELECT BUKRS BELNR
FROM BKPF
INTO CORRESPONDING FIELDS OF TABLE it_doc1
WHERE BUKRS = field_value-fieldvalue.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'BELNR'
dynpprog = progname
dynpnr = dynnum
dynprofield = 'TXT_BELNR'
value_org = 'S'
TABLES
value_tab = it_doc1.
ENDMODULE. " VALUE_BELNR INPUT
Hope you find this information useful, let me know.
Regards,
Aditya.
Maybe you are looking for
-
How do I export a PDF to Word in Reader 9?
I just downloaded Reader 9. When I click the File drop-down menu, there is no "Export" option. So how do I export a PDF file to Word. I am using MS Office Word 2003. Thanks! Beth
-
ISE wired TLS with group mapping
Hi. We authenticate wired clients using EAP-TLS with Computer Certificates. This works fine so far. Now we need an authorization with LDAP and set the VLAN based on the AD Group of the Computer. Is there a way to use the CN of the Certificate and ret
-
Increasing Font Size for Reading pdfs
Is there a way to boost the font size (beyond the double-tap) for reading pdfs on the iphone? Something like setting the font size for email perhaps? Thanks.
-
Collage of pics - special application?
I did a search for collages of jpegs and found threads from 2006 - so I'm wondering if things have been upgraded or invented since then? For example, the Applications folder on my Dock - is there an App that will allow me to cut and paste different
-
initially i have both 4.5 and 4.6 mail, but have the message of not being able to run my mail. so i followed the instructions and reinstalled Mac OS X Update v10.6.8 combo v1.1 but i cannot proceed to the next step, because it says my hd does not mee