I'm not sure if this is the right area to post this one. I have a few Access programs that contain VBA code that currently have a reference to Attachmate Extra Basic to allow some automation between the Access program and our mainframe.
The company I work for has now decided that Attachmate is too expensive and have decided to convert to Quick3270 and I have absolutley no say in what they do. I am hopeing someone out there can give me a push in the right direction to get things to work the same.
I can create the reference and create the objects but for some reason I cant get it to actually do anything to the session once it is open. Following is something very simple that should just type some text on the screen however I get nothing, not even an error. - ' send something to the screen
-
Set objQuick3270 = CreateObject("Quick3270.Application")
-
Set objSession = objQuick3270.ActiveSession
-
Set objScreen = objSession.Screen
-
-
With objScreen
-
.PutString ("HELLO")
-
End With
Thank-you.
5 14769
Hi. This is more of a Quick3270 question than a VBA one really, and I for one am not familiar at all with the emulator concerned. As far as it goes, I can see no fault in the way you are setting the VBA objects in your listing, but without knowing the Quick3270 object model I have no idea whether or not this is truly OK.
Questions:
Can you confirm that the emulator window appears on your screen after you create the object reference? Is it visible by default, or do you have to set it visible explicitly? Has the emulator been configured for you to access your mainframe? If not, would you expect to see characters echoed to the emulator screen if it is not connected - do you need to send some kind of control or escape sequence which sets the emulator off-line before you would see such characters?
-Stewart
NeoPa 32,556
Expert Mod 16PB
I doubt there'll be too many here with such specific experience I'm afraid. In such situations I generally recommend that you contact the providers of the system for help. Sometimes they have their own forums, otherwise see what technical support they offer.
@SonOf27
Won't the Object Browser expose the Properties, Methods, and Events of the Quick3270 Type Library, and also provide assistance as far as their usage goes?
Thanks for responding guys.
Stewart, I have tried with the Quick3270 window already open and also explicitly set it to visible. When I set it to visible it continues to open new windows every time the program runs. Yes the emulator has been configured and I can log in and use it manually with no apparent problems. I need it to be online and logged in so I can key directly into CICS screen locations.
NeoPa, I would agree and have sent a similar question to them as well and am waiting for a responce.
ADezzi. Yes the Object Browser exposes the properties, methods and events. My VBA pannel even autocompletes the code as I type however it still does not do what I'm expecting it to do.
Thanks for your time guys, I will keep at it and hopefully find a solution
Hi SonOf27,
I'm only a few years late in replying you regarding your Quick3270 screen scraping question. Hope you don't mind. Below is a very simple test i did to logon in CICS. To run this, copy the function to your Excel or Access module, make a early binding to Quick 3270 Type Library. As a prerequisite, you also need a quick 3270 session started up. This function will log you in stay on your main menu. To use this function other then SonOf27's environment, customization is required.
Cheers, - Public Function SignOn(strUserID As String, strPass As String) As Boolean
-
-
' Assumption: early binding to Quick3270 2.0 Type Library
-
-
Dim x As Quick3270.Quick3270
-
Dim Q As Quick3270.ISession
-
-
Set x = Quick3270.Quick3270
-
-
x.Visible = True
-
x.TimeoutValue = 500
-
Set Q = x.ActiveSession
-
If Not Q.Connected Then
-
MsgBox "Please start Q 3270 session."
-
End If
-
-
Do While Not Q.Screen.WaitForString("USERID", 18, 2)
-
DoEvents
-
Sleep 1000
-
-
' implement exit strategy here
-
-
Loop
-
-
'
-
Q.Screen.MoveTo 17, 33
-
Q.Screen.PutString "MA"
-
Q.Screen.SendKeys "<Enter>"
-
Sleep 1000
-
-
' Solve system NMGA
-
Q.Screen.MoveTo 21, 40
-
Q.Screen.PutString strUserID
-
Q.Screen.SendKeys "<Tab>"
-
Q.Screen.MoveTo 21, 64
-
Q.Screen.PutString strPass
-
Q.Screen.SendKeys "<Enter>"
-
Sleep 1000
-
-
Do While Not Q.Screen.WaitForString("Command", 2, 2)
-
DoEvents
-
Sleep 1000
-
-
If Q.Screen.GetString(2, 2, 13) = "Select Option" Then
-
Q.Screen.MoveTo 2, 21
-
Q.Screen.SendKeys "CC<ENTER>"
-
Exit Do
-
End If
-
Loop
-
-
Q.Screen.MoveTo 7, 2
-
Q.Screen.PutString "S"
-
Q.Screen.SendKeys "<Enter><Enter>"
-
Sleep 1000
-
-
Do While Not Q.Screen.WaitForString("CICS", 1, 26)
-
DoEvents
-
Sleep 1000
-
Loop
-
-
Q.Screen.MoveTo 7, 24
-
Q.Screen.PutString strUserID
-
Q.Screen.SendKeys "<Tab>"
-
Q.Screen.MoveTo 8, 24
-
Q.Screen.PutString strPass
-
Q.Screen.SendKeys "<Enter>"
-
-
If Q.Screen.GetString(32, 15, 29) = "OPID FYW Sign-on is complete." Then
-
Q.Screen.SendKeys "MAIN<ENTER><ENTER>"
-
End If
-
-
MsgBox "You should now be on the Main Menu"
-
-
End Function
Sign in to post your reply or Sign up for a free account.
Similar topics
by: Chris Shaw |
last post by:
Can anyone help.
I have an access database with a couple of thousand records in it ...
:shock:
problem is i need to type one of the fields values into a data
entry window for another...
| |
by: Baramuse |
last post by:
Hi,
I wonder how to get the mainwindow from a dialogbox or static class. Usually i use TopLevelControl (is that a good idea) to get the mainwindow from witch I can gain access to any...
|
by: Deano |
last post by:
Just looking at C Sharp to see if it might be worth my while learning
something new. Has anyone here tried a .NET language and tried to replicate
a existing Access app?
I would be interested to...
|
by: Rob |
last post by:
I know, I know, don't use frames. Well, I'm stuck with these frames and
I'm trying to add functionality without a complete redsign. You can
look at this as a nostalgic journey.
Anyway, I've got...
|
by: shsandeep |
last post by:
I am able to connect to a Z/OS thru an AIX gateway, but when I try to do
select 1 from sysibm.sysdummy1
I get the following error:
SQL0551N "AOPSXS" does not have the
privilege to perform...
|
by: pradeep |
last post by:
Hi,
I amnew to this group and lucky to have found this group. i have a
master table which has different types of application say Desktop,
Mainframes, etc.
I have an individual table for each...
|
by: Gil Lapid |
last post by:
Hi,
What is the recommended way to develop DB2 Mainframe application
without buying this expensive hardware/software ? I'd like to develop
the software for a Mainframe customer.
Thanks,
...
|
by: pnalla |
last post by:
Hi,
I am try to connect to mainframe screen using visulabasic6.0?.
1) Is it possible to connect vb to mainframe
2) Is there any interface or emulator is requried for this approach?
...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: aa123db |
last post by:
Variable and constants
Use var or let for variables and const fror constants.
Var foo ='bar';
Let foo ='bar';const baz ='bar';
Functions
function $name$ ($parameters$) {
}
...
|
by: emmanuelkatto |
last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud.
Please let me know.
Thanks!
Emmanuel
|
by: BarryA |
last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
|
by: nemocccc |
last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
|
by: Sonnysonu |
last post by:
This is the data of csv file
1 2 3
1 2 3
1 2 3
1 2 3
2 3
2 3
3
the lengths should be different i have to store the data by column-wise with in the specific length.
suppose the i have to...
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: marktang |
last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
| |