Using SAPGUI.ScriptingCtrl for testing
Hi
We are using SAPGUI.ScriptingCtrl API for recording SAPGUI events. We also use it to replay those recorded steps afterwards.
Does anybody know if it is possible to hide the SAPGUI? We wanna do it as we wanna start a test run without showing the actuall GUI. It seems that there is no offical way via some methods in the ScriptingCtrl Lib - but we've seen other tools that are able to do it.
So - is there an unoffical way?
Thanks
Hello,
1- For the connection: why don't you use the .connect method?
You could set all the needed parameters in the SAPLOGON.ini file and then use only the "system name".
If you don't want i found this way (a little bit direct but works...) we catch the handle of the first session SAP window
after connection and we "parent" it to the control... (the API is a standard windows one).
Code Example --->
GuiApplication1.OpenConnectionByString('My string!');
windows.SetParent(Isapsessiontarget(Isapconnectiontarget(GuiApplication1.Connections.Item(0)).Sessions.Item(0)).ActiveWindow.Handle,GuiApplication1.Handle);
2- For the popups.... the story became complicated!
I can summirize:
1- You need a GLOBAL WINDOWS MESSAGE HOOK (that is a dll file that you attach to your project): It will hook ALL Win messages
but filter only the ones directed to Your Process (a dll is needed because global hooks must be in global memory and not process one).
2- then you have to check for the specific message type HCBT_CREATEWND. This one is fired before creating a specific window or
control (over the form). the Class type of SAP forms is '#32770'. So the trick is:
- When you catch an event of this type and SAP form class You store the Handle in one list
- Every time the HCBT_CREATEWND will be fired again for a different class (controls over the form) you check if the parent of the control
(this is a parameter in the structure passes by the Win message HCBT_CREATEWND. ) is inside the list (that means that the control is owned
by a CREATED window that must be hided)
- If Yes you can now parent the Handle contained in the list (that is the handle of the form) to a wanted container control.
NB: You cannot parent directly when you catch the message with the SAP Form Class Type.... the Setparent will be ignored (the Form is not created
at this time!). Instead, doing so when you catch a control creation inside the form will guaranteee you that the form is created and that setparent
API will work!
PS: Acting at HCBT_CREATEWND level you are sure that you will not see any window because normally it is displayed only after all the controls on
it are created (and you parent the window at the first created control!)
PS: If you need i can send You an e-mail with the DLL for hooks (write me and i will answare); in your project you will have to import only one
function. This one will take a pointer to a procedure to catch events (a sort of callback procedure).
Similar Messages
-
Using J-meter for testing PI interfaces
Hi all,
I am planning to use j-meter for performance testing of PI interfaces. The concerned interfaces have an abap proxy to trigger the message at the sender SAP system. The receiver end is a database.
Need information on how to use/configure the j-meter for this scenario. Also, using j-meter can we send message payload to integration engine directly or is it sent to through adapter engine only?
Any kind of help is appreciated.
Thanks,
AmitThanks for the response Ajay.
I have configured the j-meter to send http request to inegration engine of PI.
The request xml that I am sending is as follows:
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Header>
<SOAP:Main xmlns:SAP="http://sap.com/xi/XI/Message/30"
versionMajor="003" versionMinor="000" SOAP:mustUnderstand="1">
</SOAP:Main>
</SOAP:Header>
<SOAP:Body>
<ns1:UnitOfMeasure xmlns:ns1="urn:sapappl:mdm:cp:eame:masterdata:uom:620">
<Record>
<FinishedMaterialCode>000000000000000233</FinishedMaterialCode>
<BaseUOM>KG</BaseUOM>
<AlternateUOM>GEB</AlternateUOM>
<UnitsInAlternateUOM>100</UnitsInAlternateUOM>
<UnitsInBaseUOM>2268</UnitsInBaseUOM>
<Active_Deleted></Active_Deleted>
</Record>
</ns1:UnitOfMeasure>
</SOAP:Body>
</SOAP:Envelope>
I am getting the following response from the XI:
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Header>
</SOAP:Header>
<SOAP:Body>
<SOAP:Fault xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>SOAP:Client</faultcode><faultstring>Error during parsing of SOAP header</faultstring><faultactor>http://sap.com/xi/XI/Message/30</faultactor><detail><SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1"><SAP:Category>XIProtocol</SAP:Category><SAP:Code area="PARSER"/><SAP:P1/><SAP:P2/><SAP:P3/><SAP:P4/><SAP:AdditionalText/><SAP:ApplicationFaultMessage namespace=""/><SAP:Stack>System error in parser
</SAP:Stack></SAP:Error></detail></SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
Any pointers as to why PI is not able to parse the request header?
Thanks,
Amit -
Can I use NI TestStand for testing ZigBee and Bluetooth transceivers and processors
Hi , I should create , maintain snd excute software test plans for testing low power wireless networks such as ZigBee, Bluetooth using Python scripts and QA Methodology .The test design includes testing
RF transceivers, RF transmitters, RF receivers, System-on-Chips, Front Ends, ZigBee Processors, Bluetooth LE Processors, and RFID reader
I am a LabVIEW Developer and familiar with testing RF Components using NI Hardware such as PXIe system but I am new to TestStand and Python. Can I use Teststand to develop and deploy the tests for this purpose and also LabVIEW instead of Python
If it is possible could you please let me know that are the advantage and disadvantage of using LabVIEW and NI Test Stand for these kind of test design and implementation.
I greatly appercaite your help and advice on this matter .Many thanks.Hi en99,
I am unsure what you mean by usign LabVIEW instead of Python - what part of the system would LabVIEW replace? Usually if you were using Python in automated test, it would be to handle the test processing, which in this case is done by TestStand.
As for advantages of TestStand over LabVIEW, the main one which SunRS mentioned is that TestStand has a test management engine, which covers result logging and passing test parameters to the various test modules, which can be written in many languages. As I mentioned above, it is Python which is commonly used to write alternative test managament engines. It is possible to write one in LabVIEW, but for good results it must be carefully architected and is typically a very time-consuming task if you want to keep it modular and use it for other applications. TestStand also has a number of built in tools which help to monitor various aspects of the test sequences, as well as provide multithreading optimisations.
I hope this helps -
Using MS FileSharingTestSuite for TESTING a LINUX Based SMB/CIFS implementation.
Hi,
I was trying to setup the MS File Sharing test suite for testing the below implementation.
Could please let me know if this use-case is supported. If not could please point me to
resources [Microsoft] which could help achieve this purpose effectively.
I want to test CIFS File server implementation running on Linux [SUSE Linux - Open Enterprise Server]
The client accessing the file services from above
CIFS server implementation is vastly
Windows clients.
Though would like to know ways of testing if the client is a Linux based desktop or a Mac based client as well in future.
For the above setup details I would like to know if and how we could create a "Driver
Computer" setup mainly. So we could use the File Sharing test suite to test against this Linux based CIFS server implementation.
And also the details on setting up the 'System Under Test (SUT)' , if any changes required[from what is documented in the "FileSharing_ServerUserGuide]" to
achieve the above.
Could kindly point me in the right direction to help achieve the above testing purpose.
Please let me know in case any details are required to help resolve the query.
Thanks for your time and help.
Regards,
Kavitha AHi,
Thanks for your time.
I am actually talking about using file sharing test suite provided My microsoft for testing a Linux Based CIFS/SMB implementation.
I have got my query answered via Mail from Microsoft dochelp team. hence marking this as resolved.
Posting the response /resolution from DOcHelp team on this thread for benefit of anyone looking for similar information/understanding:
If you are testing in a Workgroup scenario you need a Driver Computer and the System Under Test (SUT) computer.
In a domain-joined scenario, you need a DC somewhere in your environment to join the machines.
The guide document that comes with the test suite package provides guidance on what needs to be configured in each scenario.
The Driver Computer is the Windows machine where the synthetic test suite runs and simulates a client by emitting the protocol packets. The client sends packets to the file server
(the SUT) to test the server implementation of the protocol.
The SUT implements the server side of the protocol and the SUT can be running on any operating system.
For your convenience, you can setup a Windows SUT just for the purpose of understanding the test configuration on the driver client.
The document has instructions for Windows SUT and guidelines for non-Windows SUT as well. In your case, it’s a non-Windows SUT. You need to configure your server where your file
server implementation is running and setup the Driver computer to test your SUT.
I understand that your ultimate goal is to setup your own SUT on the SUSE Linux server.
Many customers have setup SUTs on CentOS, Ubuntu, etc. The flavor of the operating system is not relevant as such. The client simulator talks the SUT by following the protocol
packets.
Please go through the document step-by-step and I am sure it will come together.
Let’s me know whether you have any further questions.
I am not looking at CIFS share access from a Linux system. Otherwise would have posted in relevant Linux forums If looking for the same information. Thanks again for taking time to help though. -
Hi,
I already read that it was not possible to switch off either 2.4ghz or 5ghz radio in the year 2009. Is it in the meantime possible? I would like to test some new wireless installations on Co-channel interference.AHT on the disks is unreliable and can't be updated to match firmware and drivers changes in OS X updates, so don't even bother with it.
If your Mac is a more recent model, you can boot the machine while holding the D key down until something appears on the screen, but you have to be near your Wifi or on Ethernet connection to the router/modem as AHT is downloaded from Apple's servers.
If your machine is having a problem, take it to a Apple Authroized Repair or Store and they will hook it up to their diagnostic machine for free.
No problem.
And you can install as many OS X versions on one machine as you like, as long as it's a Mac.
OS X 10.5 is obsolete and insecure, OS X 10.6 and later are getting security updates.
OS X 10.6 has Rosetta and will run your PPC based programs of 10.5.
OS X 10.7 and later version will not run Rosetta or PPC code, unless you install OS X 10.6 Server (it's legal) into a virtual machine program.
Download the free MacTracker and it can tell you everything about your particular model of Mac and what operating systems it will run. -
Using secatt for testing entire cycle
How can we use SECATT tool for testing the entire series of transactions to be used in logistics functions?
Example :
rfq
acceptance/rejections
purchase order
goods receipt
invoice verification
goods issue
inventory posting/stock transfer
all in a sequence?Hi Chintan Chande,
Create eCATT scripts for each transaction and export the needed values in each script and use them as input variables in the next scripts.
Like, Script P_Order for PO, take the PO number and create a GR WRT to PO number.
Like wise you could link all your scripts to form a Scenario.
After creating individual scripts for each transactions, then create a master script wherein you encapsulate/refer all of them in here..
Like REF ( RFQ , RFQ_1 ).
REF ( INVENTORY , INVENTORY_1 ).
Also, following is the link of a weblog on SDN which gives step by setp details about chaining. It also explains the terms used with necessary details -
/people/sapna.modi/blog/2006/04/18/ecatt-chaining-parameterization-creation-of-test-datatest-configuration-system-data-part-iv
Also, you may also use this thread for your reference.. Though this is not exactly what you are looking for, but it would help you in your case even.
How to store export parameters in eCATT?
Hope this helps..
Best regards,
Harsha
PS: Reward points if this answers your query. -
Can't use iPad for testing app
When I tried to run an app under development on my iPad 1, I get a message "a valid provisioning profile for this exectable was not found."
Under General > Profiles > the Develop App Games and Developer Provisioning are both green ticked as Verified.
So I can't use my iPad for testing the app, which was no problem when I was running OS Lion with XCode 4.2.
I'm now using Xcode 4.6 on Mountain Lion 10.8.2.
What could be the problem? Thank you.Currently only a few Apps support casting to Chromecast. There is no mirroring support if that is what you are after.
Apps include Youtube, Google Chrome etc...
https://support.google.com/chromecast/answer/3006709?hl=en -
Want to separate Portal into 2 part in one Server (1 for Dev,1 for testing)
Hi.
We have 1 server for Portal development (Oracle Portal 9.0.2.0.1 R2).
The spec is
-SunFire280R.
-2 Gig Memory
-2 Processor
We install everything in one server (portal,database,iAS)
The Problem is, we also have to use the Server for Testing and Production.
So,how can we separate the Server into two Part, one for Portal Development,
one for Portal testing & Production?
Currently,mostly we use 2 port
1)port 7777, for Login Page/ChangePssword/SingleSignOff (in infs)
2)port 7778,for portal home,our portlets (in apps).
How can we make it to be duplicated in One Server only?
Thanks.... another question would be why not upgrade those old Forms & Reports to the newest release 10.1.2.0.2 and use the latest Application Server to run them with?
Release 6i and 1.0.2.2 is as you know desupported.
Regards,
Martin -
Problems with concurrency tests using Crystal Reports for VS 2005
Post Author: condeagustin
CA Forum: General Feedback
Hi
My name is Agustin and Im using Crystal Reports for VS 2005
and NET 2.0 to generate pdf files. This is the scenario:
I created a COM+ object in c# and everytime the
COM+ creates an instance of this object, the following flow is executed:
it reads an xml file from a database, then it feeds the report with this
xml file, afterwards it generates a pdf file and finally this pdf file is
inserted into the database. Both fields (xml and pdf fields) are varbinary in the
same table in sql server 2005. All the flow from reading the xml to inserting
the pdf into the database is executed in memory, it never goes to the hard
disk. In other words both the xml and the pdf file are stored in memory (the
RAM). That is the only function of that COM+ object and I already have it in a
production server and it works GREAT!!
The PROBLEM is the concurrency tests. I made the following tests
in the same production server:
1. First I went to the registry and I set the PrintJobLimit to
100 in HKEY_LOCAL_MACHINESOFTWARECrystal Decisions10.2Report Application
ServerServer
2. I shut down the object in the COM+ and I executed 100
threads all at the same time. Each thread created one instance of the object in
the COM+ and the 100 pdfs were generated SUCCESFULLY in 5 minutes!!
3. Then I executed again 100 threads (WITHOUT shutting down the
object in the com+). 10 pdfs were generated succesfully but the rest were
never generated and there was no exception because my object was NEVER
INSTANTIADED in the COM+, I mean, the 90 instances were never created in the
COM+, so my object was never executed, THAT IS MY PROBLEM!! Do I have to
modify something in the registry files of crystal reports to fix this? What can
I do? I have revised the code in that object a LOT OF TIMES and believe me,
everything is being closed and disposed at the end (the memory streams, the
ReportClass objects, the connection to the database, even the dataset used to
store the data of the xml file!
So to sum up the problem is not with the execution of my object
(cause once is created the object works great and the pdf is generated
perfectly!), the problem is with the com+ TRYING to create another instance
of my object given that test scenario. Help me please, What do you
suggest?
The production server has this specifications:
Operative System: Windows Server 2003 Enterprise Edition with Service Pack 2
Processor: Dual Core AMD Opteron 2212 2.00GHz
RAM: 820MB
Hard drive: It is partitioned in 2 drives --> C
drive has 20GB and D has 60GB
Note: Each generated pdf has only one page and if you bring it
to disk its maximum size is 56KB
I hope your answer and thank you
Agustín Conde MartíPost Author: John Werner Enoksen
CA Forum: General Feedback
Hi, im about to write a simular solution where I will use VS2008/Com+ to be in compliance to an existing solition written in VB6.0, so I was googling to look for bumps. Did you figure this one out?
Best regards,
John Werner -
I've a test version in use for testing purposes and want to buy it now without loosung the files.
Just buy it and enter your serial key.
-
I need to test a new learning management system used by my university in Firefox 3.5. This browser is certified for Blackboard 9.1 wheras 3.6 is not. I already upgraded to 3.6. How can I download and install 3.5?
My advice is to install the Firefox Portable version that you need for Blackboard on your computer, and use that installation only for Blackboard. Continue to use 3.6 for all other web browsing. <br />
FP 3.5.x is here: <br />
http://portableapps.com/apps/internet/firefox_portable/localization#legacy -
how do i simulate a DAQ device
in MAX and use it for testing applications without hardware???
If my application requires inputs
from external hardware to proceed how can I simulate a DAQ device in LabVEIW?
i need to simulate several Digital inputs and Outputs to test the software. currently i dont have the hardware and DAQ device here.
please reply with your valuable suggestions.
many thanks in advance
RENN
Kudos always welcome for helpful posts
Solved!
Go to Solution.Hi,
There is no option to simulate traditional device.You need hardware for that so i would suggest to simulate a PXI device which has similar configuration to PCI-6014 and to do a small modification to your application.. -
Using ecat for uploading HCM objects for testing
Hi,
Can anybody help me out with the steps using ecat to upload the HCM objects for testing.
I could do tcd recording and download the file.
Regards,
Mukta MHi,
I have been using Oracle Flashback Database for a long time in our test environments. As you already said, I recommend that you create Guaranteed Restore Points rather than rely on db_flashback_retention_target. If you are planning to use Guaranteed Restore Points only, then you don't need to turn on flashback. If flashback database is not enabled, then the database must be mounted, not open, when creating the first guaranteed restore point (or if all previously created guaranteed restore points have been dropped).
My Answers:
1) I don't think so. Flashback database is faster compared to RMAN restore/recover operations.
2) Create a backup ins not mandatory, but is a good practice.
3) I created a Nagios plugin that take this work for me, but you can check the v$recovery_file_dest view from time to time.
4) If you take a backup then I don't see a problem, but take care that flashback database relies not only on flashback log files but also in archive redo log files. I recommend you to delete archivelogs (from RMAN) after you drop the restore point.
5) Flashback log files are automatically deleted after the Guaranteed restore points are deleted.
6) Read documentation, make more tests. In 2011 I wrote an article (Brazilian Portuguese) about Flashback Database. Maybe you can take a look ;-)
Cheers
Legatti -
System crash while using Callable objects for SAP transaction !!
Hi all,
i have created a CO to use SAP transaction, i have created a system, its connection test is successfull.when i create the CO and specify the system and Tcode, and Test it, its giving a Short dump saying its crashed, do anyone knows the rerason??please guide me
Thanx in advanceHi Audrey
The Help for SAP Transactional iView can be found here - but although I have followed these steps and an associated blog it still does not work for me. Perhaps you will have more luck. See below for my particular error (if your able to help me ;-).)
SAP Help for SAP Transactional iView
http://help.sap.com/saphelp_nw04/helpdata/en/02/f9e1ac7da0ee4587d79e8de7584966/frameset.htm
SAP Blog for the same
Create SAP Transaction iView using SAPGUI for Windows
NOTE : Sadly I cannot get mine to work !! ****
I'm also trying to create a SAP Transaction iView. Following these steps.
I can preview the iView OK. So it seems that System and Alias are OK.
BUT when I logon as a user on the Portal with that iVew it fails with the same type of error you had.
"Unable to lookup System 'SAPDBEAlias'. Please check the system object and the alias.." -
Data Federator XI 3.0 using DB2 VARCHAR FOR BIT DATA Column?
We have a column in a DB2 database that is defined as VARCHAR(16) FOR
BIT DATA.
We are using the suggested IBM JDBC driver, db2jcc.jar, against a DB2
OS/390 8.1.5 version database.
The Datasource column displays a data type of NULL, indicating the DF
does not understand or cannot handle this IBM data type.
We have two issues.
First, target tables are not able to return any columns, regardless if
we exclude columns defined as NULL as mentioned above. We see the
'Wait' animation for a very long time when we use the 'Target table
test tool' option. Selecting to display the count only, returns zero.
We are able to fetch and view non-NULL column data when using the
'Query tool' under the Datasource pane.
I also get the same result when using the 'My Query Tool' in Server
Administrator; a selection agains the sources returns data while
selecting from a target table returns no data. Also, a 'select
count(*)' returns zero.
The second issue is in mapping a relationship between two DB2 tables
where the join is between two columns of the above mentioned type
(NULL).
The error we get back when we use "Show Errors" is "The types
'NULL' (in 'S1.PLANNEDGOALID') and 'NULL' (in 'S2.PLANNDEDGOALID') are
not compatible.". When reviewing the relationship, a dashed red line
appears instead of a solid grey line between the two tables in the
"Table relationships and pre-filers" section of our mapping pane.
The following query returns an error via the Server Administrator
Query Tool; "Types 'NULL' and 'NULL' are not compatible for operator
'=' (Error code : 10248)".
select count(*)
from
(select s1.CASEID, s2.PLANNEDGOALID, s2.NAME, s2.PLANNEDGRPSTTYCD
from "/DF_CMS_ODS/sources/CMFSREPT/CMSPROD.PLANNEDGOAL" AS s1
,"/DF_CMS_ODS/sources/CMFSREPT/CMSPROD.PLANNEDGOAL" s2
where s1.PLANNEDGOALID = s2.PLANNEDGOALID)
Here are the properties settings in the Resource Connector Settings
for jdbc.db2.zSeries we are using.
capabilities: isjdbc=true;orderBy=false
driverLocation: drivers/db2jcc_license_cisuz.jar;drivers/db2jcc.jar
jdbcClass: com.ibm.db2.jcc.DB2Driver
sourceType: db2
supportsCatalog: no
urlTemplate: jdbc:db2://<hostname>[:<port>]/<databasename>
Here are the Connection parameters as defined for the datasource in DF
Designer.
Defined resource: jdbc.db2.zSeries
Jdbc connection URL: jdbc:db2://DB2D03:50000/CMFSREPT
Authentication: Use a specific database logon for all Data Federator
users.
User Name: x
Password: hidden
Login domain: -- Choose a defined login domain --
Supports Schema: checked
Schema: is empty
Prefix table names with schema name: checked
Supports catalog: unchecked
Prefix table names with the database name: unchecked
Table types: TABLE and VIEW
So, the following is the two questions we require answers for...
Is this a limitation of Data Federator?
Is there a work around short of changing the datatype in the database.Hi Darren,
The VARCHAR() FOR BIT DATA is a binary data type and Data Federator does not support binaries. But if in your case, it makes sense to map this column to a VARCHAR data type you can configure the DB2 connector to view this column as a VARCHAR.
Your column can be mapped explicitly to a data type of your choice using a property: castColumnType.
This property can be set updating the resource you selected when you registered you DB2 data source.
If the resource is "jdbc.db2", then:
1. Launch Data Federator Administrator
2. Click on "Administration" tab
3. Click on "Connector Settings"
4. Select the right resource: "jdbc.db2"
5. Click "Add a property"
6. Select "castColumnType"
7. Set its value to: VARCHAR() FOR BIT DATA=VARCHAR
8. Click on Ok
You should see this column as a VARCHAR.
Regards,
Mokrane
PS: For the target table issue, we have forwarded your mail to the Data Federator Designer team.
Maybe you are looking for
-
EBS - Error F5 263 (Diff is too large for clearing)
Helli Experts, We are implementing SAP Electronic bank statement functionality. One of the requirements of the business is that of automatic clearing of customer open items after import of MT940. We are using standard interpretation algorithm 001, b
-
How can I block the autoplaying videos in this webpage?
On right column of this webpage ([http://www.wenxuecity.com/news/2015/03/11/4096330.html]), there is an autoplaying video, which I outlined in a red box. (You might need to refresh one more time for the video appears, as the website sometimes play fl
-
"Use Preview Files" works in CS5.5 but is "Useless" in CS6
I'm a heavy user of the "Use Previews Files" option when exporting files. This has worked great with Premiere CS5.5 but using the same method in CS6 no longer works and reverts back to rerendering the original files in the timeline and rerendering al
-
Apple Mobile Device program not installing!!!
When trying to connect my iPhone to my computer it doesnt connect to iTunes. It says the iPhone cannot be used because the required software is not installed. Run the iTunes installer to remove iTunes, then install iTunes again. However, I've done th
-
How to disable automatic aliases in presentation catalog
Hi! I am working on OBI EE development project in prototyping phase when requirements for column naming change quite often. For all presentation columns we have option "Use Logical Column Name" so that whenever we want to change name of column, we ch