Question

FTP to MainFrame

Asked by: allanau20

Hi Experts !

Using WS FTP Pro 2007 scripting language (SCP)

The following script FTPs a file from Windows to a mainframe dataset.

It uploads the file to:

  SOME.MAIN.FRAME.DATA.SETS.TEST.CB

And then it renames it to a GDG (generation dataset), ie:

SOME.MAIN.FRAME.DATA.SETS.TEST.G0005V00

-----------------------------------------------------------

trace screen
auth ssl 1
connect CB
log E:\Program Files\Program01\Program01.log
quote cwd ''
quote cwd 'SOME.MAIN.FRAME.DATA.SETS.TEST'
quote type a
put "E:\Program Files\Program01\SOMEFILE.txt" CB
quote rnfr 'SOME.MAIN.FRAME.DATA.SETS.TEST.CB'
quote rnto 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)'
dir
close

-----------------------------------------------------------


How do you modify it so that it will open and close the GDG?

thanks in advance for your help!

This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.

Subscribe now for full access to Experts Exchange and get

Instant Access to this Solution

  • Plus...
  • 30 Day FREE access, no risk, no obligation
  • Collaborate with the world's top tech experts
  • Unlimited access to our exclusive solution database
  • Never be left without tech help again

Subscribe Now

Asked On
2007-05-24 at 14:35:08ID22593710
Tags

ftp

,

mainframe

Topics

FTP Software

,

File Transfer Protocol (FTP)

,

MainFrame Operating Systems

Participating Experts
1
Points
500
Comments
15

Trusted by hundreds of thousands everyday for fast, accurate and reliable tech support.

  • "The time we save is the biggest benefit of Experts Exchange to Warner Bros. What could take multiple guys 2 hours or more each to find is accessed in around 15 minutes on Experts Exchange." Mike Kapnisakis, Warner Bros.
  • "Our team likes having a resource that is more secure than just using Google and most experts using this service really know their stuff. It's nice to look here first versus using Google." Dayna Sellner, Lockheed Martin
  • "Anytime that I've been stumped with a problem, 9 out of 10 times Experts Exchange has either the accepted solution or an open discussion of the potential solution to the problem." Kenny Red, eBay Inc.

See what Experts Exchange can do for you.

Got a question?

We've got the answer.

Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.

Screenshot of Experts Exchange Knowledgebase

Need individual assistance?

Our experts are ready to help.

If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.

Screenshot of Experts Exchange Knowledgebase

Want to learn from the best?

Read articles from industry experts.

Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.

Screenshot of an Article

Working on a long term project?

Store your work and research.

Save solutions to your questions, answers you’ve discovered through searching plus helpful articles in your personal knowledgebase for easy future access.

Screenshot of Experts Exchange Knowledgebase

Access the answers to your technology questions today.

Subscribe Now

30-day free trial. Register in 60 seconds.

What Makes Experts Exchange Unique?

Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Trusted by the world's most respected brands.

image of each brand's logo

Faithfully serving IT professionals since 1996.

Experts Exchange Logo

Try it out and discover for yourself.

Subscribe Now

30-day free trial. Register in 60 seconds.

Related Solutions

  1. Sending a Txt file using Lotus  Notes to an MVS Mainframe t…
    I have a TXT file that I am writting to using the print command. I was wondering if there is a means in Notes to take that TXT file on my C: Drive and tranmit it to an MVS host (Mainframe), to be placed in a Dataset. I know we can run an FTP job on the host to pick up a file ...
  2. SYSMDUMP PROBLEM - MAINFRAME
    I have a SYSMDUMP which is transferred from a mainframe system in to a unix system. I need to read that SYSMDUMP through IPCS in my mainframe machine. From the unix system I have transferred the dump to my mainframe (Z/OS v 1.4) machine. To transfer the dump from the unix mac...
  3. FTP from unix to mainframe
    Hi, I am trying to FTP a file from a unix server to mainframe. I have no idea how these main frames work but I have been told to use a specific remote file name for that file which is AAAA.BB.CCCCCCCC.XXXXX.DDD I used ftp <remote server> logged in and I was in changed...
  4. DTS / FTP / Mainframe
    We have several FTP 'tasks' (not DTS) that are currently executed daily to pull data from a GDG on the mainframe onto a local drive. They are .cmd files that use native ftp.exe. I would like to convert this into DTS package with FTP tasks if possible. What I am seeing and rea...
  5. How to read a dataset in mainframe using a shell script on u…
    I want to write a shell script which runs part of a cron job, and is able to read data from a mainframe GDG. Can some one help?

Free Tech Articles

  1. WARNING: 5 Reasons why you should NEVER fix a computer for free.
    It is in our nature to love the puzzle. We are obsessed. The lot of us. We love puzzles. We love the challenge. We thrive on finding the answer. We hate disarray. It bothers us deep in our soul. W...
  2. SCCM OSD Basic troubleshooting
    SCCM 2007 OSD is a fantastic way to deploy operating systems, however, like most things SCCM issues can sometimes be difficult to resolve due to the sheer volume of logs to sift through and the dispe...
  3. Migrate Small Business Server 2003 to Exchange 2010 and Windows 2008 R2
    This guide is intended to provide step by step instructions on how to migrate from Small Business Server 2003 to Windows 2008 R2 with Exchange 2010. For this migration to work you will need the fo...
  4. Create a Win7 Gadget
    This article shows you how to create a simple "Gadget" -- a sort of mini-application supported by Windows 7 and Vista. Gadgets can be dropped anywhere on the desktop to provide instant information, ...
  5. Outlook continually prompting for username and password
    There have been a lot of questions recently regarding Outlook prompting for a username and password whilst using Exchange 2007. There are a few reasons why this would happen and I will try to cover t...
  6. Backup Exchange 2010 Information Store using Windows Backup
    There seems to be quite a lot of confusion around the ability to backup Exchange 2010 using the built in Windows Backup feature. This stems from the omission of this feature prior to Exchange 2007 s...

Cloud Class Webinars

  1. Avoiding Bugs in Microsoft Access
    Alison Balter takes and in-depth look at avoiding bugs in Access. In this webinar you will learn about using the immediate window to debug your applications, invoking the debugger, using breakpoints to troubleshoot, stepping through code, setting the next statement to execute, ...
  2. Top 10 Best New Features in Visio 2010
    Scott Helmers gives live demonstrations of the top 10 new features in Visio 2010. This webinar will teach you how to create compelling diagrams by adding shapes to the page with a single click, linking the shapes in a diagram to data in Excel (or SQL Server, or SharePoint), ...
  3. IT Consultant Business Secrets Revealed
    Michael Munger, Experts Exchange tech pro and IT consultant, pulls back the curtain on his very successful businesses and answers question on every IT consultant and business owner should know about. He shares secrets on what he did to solve the 5 most common problems in IT, ...
  4. Disaster Recovery and Business Continuity
    Quest CTO, Mike Billon, gives an overview of the steps involved in building a dunamic disaster recovery plan. Through case studies and an examination of software/hardware tooles for monitoring and testing, you'll gain a better understandin of where you are, where you want ...
  5. Organize Your Visio Diagrams with Containers and Lists
    Scott Helmers uses cross functional flowcharts, wireframe diagrams, data graphic legends and seating charts to teach you: how to ustilize all three new structured diagram components in Visio 2010, the best practices for organizeing shapes in previous version of Visio, how to organize ...
  6. How to Us Objects, Properties, Events and Methods in Microsoft Access
    Alison Dalter gives an in-depbth look at objects, properties, events and methods in Microsoft Access. In this webinar you will learn about using the object browser, referring to objects, working with properties and methods, working with object variables, understanding the ...

Join the Community

Give a Little. Get a Lot.

Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.

Join the Community

Answers

 

by: giltjrPosted on 2007-05-24 at 18:57:11ID: 19154296

I will have to double check, but I don't think you can rename a file to a GDG.  You will need to put it to the GDG name to start with.  The problem is that the actual goooovoo is generated at file open time and doing a rename does not open the file, it just alters the catalog and VTOC entries.

Is there any reason why you don't put it directly to the GDG name?

 

by: allanau20Posted on 2007-05-24 at 19:44:41ID: 19154466

That would be the ideal solution, giltjr.

I'm having issues getting WS FTP Pro to output to a GDG.

It will work with DOS FTP like this:

put "TestFile" 'SOME.MAIN.FRAME.DATA.SETS.TEST'

BUT, with WS FTP Pro 2007, I have tried:

put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)'

I'm unable to run my script right now, so i'll have to get the error msg here tomorrow.

Thanks for your help.

 

by: giltjrPosted on 2007-05-24 at 20:09:13ID: 19154548

Typically putting to a GDG fails because because you did not specify a model DSCB.  You need to issue:

   quote site DCBDSN='some.file.name'
   quote site LRECL BLKSIZE RECFM

The second qoute site will tell z/OS to use the LRECL BLKSIZE and RECFM from the DCBDSN.  If you want to use a differenc DCB, then you still issue the quote site with DCBDSN, but then issue the second quote site like:

   quote site LRECL=xx BLKSIZE=yy RECFM=aa

where xx, yy, and aa are set to what you need.

 

by: allanau20Posted on 2007-05-25 at 10:21:20ID: 19158553

Thanks giltjr.

Forgot to mention in WS FTP Pro I'm able specify a mdoel DSCB in the form of a site (profile).

site lrecl=2500 blksize=27500 recfm=fb cyl pri=250 sec=50;

Here's what I ran:

trace screen
auth ssl 1
connect CB
log E:\Program Files\Program01\Program01.log
quote cwd ''
quote cwd 'SOME.MAIN.FRAME.DATA.SETS.TEST'
quote type a
put "E:\Program Files\Program01\SOMEFILE.txt" SOME.MAIN.FRAME.DATA.SETS.TEST(+1)
dir
close

Here's the log, I put --> to point to where the errors are:

------ Start stepping the script ------

Processing Line 1 [trace screen]

Processing Line 2 [auth ssl 1]

Processing Line 3 [connect CB]
Finding Host HZIDEV ...
Connecting to xx.xxx.xx.xxx.xx
Connected to xx.xxx.xx.xxx.xx in 0.015625 seconds, Waiting for Server Response
Initializing SSL Session ...
220-FTPD1 IBM FTP CS V1R4 at XXXXXXX, 17:08:37 on 2007-05-25.
220 Connection will close if idle for more than 5 minutes.
AUTH TLS
234 Security environment established - ready for negotiation
SSL session NOT set for reuse
SSL Session Started.
Host type (1): Automatic Detect
USER MFUserAcct
331 Send password please.
PASS (hidden)
230 MFUserAcct is logged on.  Working directory is "MFUserAcct.".
SYST
215 MVS is the operating system of this server. FTP Server is running on z/OS.
Host type (2): IBM MVS
PBSZ 0
200 Protection buffer size accepted
PROT P
200 Data connection protection set to private
PWD
257 "'MFUserAcct.'" is working directory.
site lrecl=2500 blksize=27500 recfm=fb cyl pri=250 sec=50
200 SITE command was accepted

Processing Line 4 [log E:\Program Files\Program01\Program01.log]

Processing Line 5 [quote cwd '']
Sending command [cwd] with parameter ['']
cwd ''
250 "" is the working directory name prefix.

Processing Line 6 [quote cwd 'SOME.MAIN.FRAME.DATA.SETS.TEST']
Sending command [cwd] with parameter ['SOME.MAIN.FRAME.DATA.SETS.TEST']
cwd 'SOME.MAIN.FRAME.DATA.SETS.TEST'
250 "SOME.MAIN.FRAME.DATA.SETS.TEST." is the working directory name prefix.

Processing Line 7 [quote type a]
Sending command [type] with parameter [a]
type a
200 Representation type is Ascii NonPrint

Processing Line 8 [put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)]
CDUP
250 "SOME.MAIN.FRAME.DATA.SETS." is the working directory name prefix.
CDUP
250 "SOME.MAIN.FRAME.DATA." is the working directory name prefix.
CDUP
250 "SOME.MAIN.FRAME." is the working directory name prefix.
CDUP
250 "SOME.MAIN." is the working directory name prefix.
CDUP
250 "SOME." is the working directory name prefix.
CDUP
250 "" is the working directory name prefix.
CDUP
--> 501 Directory is already NULL
CWD 'MFUserAcct..SOME.MAIN.FRAME.DATA.SETS.TEST.SOME.MAIN.FRAME.DATA.SETS.TEST'
--> 501 Invalid directory name - too large.
XCWD 'MFUserAcct..SOME.MAIN.FRAME.DATA.SETS.TEST.SOME.MAIN.FRAME.DATA.SETS.TEST'
--> 501 Invalid directory name - too large.
PWD
257 "''" is working directory.
CWD MFUserAcct.''.'SOME.MAIN.FRAME.DATA.SETS.TEST'
--> 501 Invalid directory name - too large.
XCWD MFUserAcct.''.'SOME.MAIN.FRAME.DATA.SETS.TEST'
--> 501 Invalid directory name - too large.
--> Failure in command [put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)]

Thanks for looking at this.

 

by: giltjrPosted on 2007-05-25 at 13:41:00ID: 19159821

Ah  I think I see the problem see the problem.

Change

put "E:\Program Files\Program01\SOMEFILE.txt" SOME.MAIN.FRAME.DATA.SETS.TEST(+1)

to

put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)'

notice the single quotes around the mainframe file name and get rid of the:

quote cwd ''
quote cwd 'SOME.MAIN.FRAME.DATA.SETS.TEST'


What are are doing is the same as  doing the following on windows

cd \some\directory\name

put myfile.txt some\directory\name\myfile.txt

and expecting the myfile.txt to be in \some\directory\name.  It won't be becuase you cd'ed to \some\directory\name and then did a put to some\directory\name\myfile.txt.  As there is no leading \ the receiving system is going to try and put the file in \some\directory\name\some\directory\name\myfile.txt.

When ftp'ing to a z/OS based mainframe and send a file to the "mvs" file system, if you are specifing a fully qualified name, you need to put the name in quotes.  Otherwise it assume that what you are specifing is a suffix of the current directory.  As you cd'ed to SOME.MAIN.FRAME.DATA.SETS.TEST and then put SOME.MAIN.FRAME.DATA.SETS.TEST(+1), it is attempting to write to the name

     SOME.MAIN.FRAME.DATA.SETS.TEST.SOME.MAIN.FRAME.DATA.SETS.TEST.GxxxxVxx

Which is longer than the 44 character limitation z/OS has on MVS file names.

 

by: allanau20Posted on 2007-05-25 at 13:48:32ID: 19159858

You're cool, and thanks for the explanation.

I'll try it once I have a chace. Will keep you posted!

 

by: allanau20Posted on 2007-05-25 at 16:44:37ID: 19160477

There was an error and file did not FTPed.

Here's what I ran:

trace screen
auth ssl 1
connect CB
log E:\Program Files\Program01\Program01.log
quote type a
put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)'

dir
close

Here's what in the error log:

------ Started running the script ------

Processing Line 1 [trace screen]

Processing Line 2 [auth ssl 1]

Processing Line 3 [connect CB]
Finding Host XXXXXX ...
Connecting to XX.XXX.XX.XXX.XX
Connected to XX.XXX.XX.XXX.XX in 0.015625 seconds, Waiting for Server Response
Initializing SSL Session ...
220-FTPD1 IBM FTP CS V1R4 at XXXXXX, 23:33:53 on 2007-05-25.
220 Connection will close if idle for more than 5 minutes.
AUTH TLS
234 Security environment established - ready for negotiation
SSL session NOT set for reuse
SSL Session Started.
Host type (1): Automatic Detect
USER MFUserAcct
331 Send password please.
PASS (hidden)
230 MFUserAcct is logged on.  Working directory is "MFUserAcct.".
SYST
215 MVS is the operating system of this server. FTP Server is running on z/OS.
Host type (2): IBM MVS
PBSZ 0
200 Protection buffer size accepted
PROT P
200 Data connection protection set to private
PWD
257 "'MFUserAcct.'" is working directory.
site lrecl=2500 blksize=27500 recfm=fb cyl pri=250 sec=50
200 SITE command was accepted

Processing Line 4 [log E:\Program Files\Program01\Program01.log]

Processing Line 5 [quote type a]
Sending command [type] with parameter [a]
type a
200 Representation type is Ascii NonPrint

Processing Line 6 [put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)']
CDUP
250 "" is the working directory name prefix.
CWD 'MFUserAcct
--> 501 Mismatched quotes on directory name "'MFUserAcct".
XCWD 'MFUserAcct
--> 501 Mismatched quotes on directory name "'MFUserAcct".
CWD 'MFUserAcct.SOME.MAIN.FRAME.DATA.SETS'
250 "MFUserAcct.SOME.MAIN.FRAME.DATA.SETS." is the working directory name prefix.
PWD
257 "'MFUserAcct.SOME.MAIN.FRAME.DATA.SETS.'" is working directory.
TYPE A
200 Representation type is Ascii NonPrint
PASV
227 Entering Passive Mode (xx.xxx.xx.xxx.x.xxx)
connecting data channel to xx.xxx.xx.xxx.x.xxx(2539)
data channel connected to xx.xxx.xx.xxx.x.xxx(2539)
LIST
125 List started OK
transferred 134 bytes in < 0.001 seconds, 1046.875 Kbps ( 130.859 Kbps), transfer succeeded.
250 List completed successfully.
Starting request
Starting request
Starting request
Transfer request completed with status: Failed, 1 SubItem(s) failed
Transfer log was saved at C:\Documents and Settings\HM14069\Application Data\Ipswitch\WS_FTP\Logs\TransferReq2-00005.log
CWD MFUserAcct.
250 "MFUserAcct.SOME.MAIN.FRAME.DATA.SETS.MFUserAcct." is the working directory name prefix.
Failure in command [put "E:\Program Files\HMSA\Argus_CB\2.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)']

Processing Line 8 [dir]
PWD
257 "'MFUserAcct.SOME.MAIN.FRAME.DATA.SETS.MFUserAcct.'" is working directory.
TYPE A
200 Representation type is Ascii NonPrint
PASV
227 Entering Passive Mode (xx.xxx.xx.xxx.x.xxx)
connecting data channel to xx.xxx.xx.xxx.x.xxx(2544)
data channel connected to xx.xxx.xx.xxx.x.xxx(2544)
LIST
550 No data sets found.
            Directory of MFUserAcct.SOME.MAIN.FRAME.DATA.SETS.MFUserAcct.
            0 Dirs            0 Files            0 Bytes

Processing Line 9 [close]
QUIT
221 Quit command received. Goodbye.
Connection closed.  Ready for next connection.

------ Finished running the script ------

 

by: giltjrPosted on 2007-05-25 at 17:55:11ID: 19160610

Something does not look right.  I see commands that seem to be being issued from you, but I don't see them in the script.

I see CWD, XCWD and SITE LRECL .... commands, but they do not exist in your script.

You mentioned before that the site command was in a "profile", could the profile have the CWD and XCWD commands also?  If so try removing them.

 

by: allanau20Posted on 2007-05-25 at 18:01:19ID: 19160615

Thanks giltjr

The profile contains this:
site lrecl=2500 blksize=27500 recfm=fb cyl pri=250 sec=50;

and in the 'TRANSFER' tab, the only things that are checked:

Update folder after transfer
Skip unmodified files

There are other tabs for settings such as port, passive mode, verify deletion, SSL, firewall, etc.

Thanks for your help!

 

by: giltjrPosted on 2007-05-25 at 18:10:51ID: 19160626

I would suggest that you try doing this manually first.

Once you have connected to the ftp server and logged on you should only need to issue the commands:

ascii
quote site lrecl=2500 blksize=27500 recfm=fb cyl pri=250 sec=50
put "E:\Program Files\Program01\SOMEFILE.txt" 'SOME.MAIN.FRAME.DATA.SETS.TEST(+1)'

 

by: allanau20Posted on 2007-05-25 at 18:36:34ID: 19160665

Weird -- it doesn't work. I think it's a WS FTP Pro thing.

I'll need to research.

I'll try FTP DOS and see if it works.

 

by: giltjrPosted on 2007-05-25 at 18:41:01ID: 19160671

ftp dos does NOT support SSL'ed ftp.  So if your mainframe ftp server requires SSL, you are out of luck.

 

by: allanau20Posted on 2007-05-29 at 16:29:17ID: 19176350

Hey giltjr,

Tried this and it FTPed successfully to the GDG.

trace screen
auth ssl 1
connect CB
log E:\Program Files\Program01\Program01.log
quote cwd ''
quote cwd ''SOME.MAIN.FRAME.DATA.SETS'
quote type a
put "E:\Program Files\Program01\SOMEFILE.txt"   TEST(+1)
dir
close

But, I would get this err msg:

Processing Line 8 [put "E:\Program Files\Program01\SOMEFILE.txt"  DRUGCLM(+1)]
PWD
257 "'SOME.MAIN.FRAME.DATA.SETS'" is working directory.
TYPE A
200 Representation type is Ascii NonPrint
PASV
227 Entering Passive Mode (xx,xx,xx,xx,x,20)
connecting data channel to xx.xxx.xx.xx:9,20(2324)
data channel connected to xx.xxx.xx.xx:9,20(2324)
LIST
125 List started OK
transferred 1385 bytes in 0.047 seconds, 230.829 Kbps ( 28.854 Kbps), transfer succeeded.
250 List completed successfully.
Starting request
Transfer request completed with status: Finished
CWD MFUserAcct.''.'SOME.MAIN.FRAME.DATA.SETS'
--> 501 Invalid directory name - too large.
XCWD MFUserAcct.''.'SOME.MAIN.FRAME.DATA.SETS'
--> 501 Invalid directory name - too large.

Any ideas?

Thanks again for your help!

 

by: giltjrPosted on 2007-05-29 at 19:18:52ID: 19176930

It still appears that WSFTP is doing things under the covers.

I have no clue what would be changing TEST(+1) to  DRUGCLM(+1)].

The "501" errors are because something is issuing an invalid CD (CDW) command.  It looks almost like WSFTP is always attempting to change to your "home" directory, which it is assuming is your userid.

Either than or the system programmers on the z/OS side have some exits in place that are doing things under the covers based on your companies standards and they are attempting to force you to put the file in "your" home directory.  Which in the MVS side of z/OS would mean that the file name must start with your userid.

Just to make sure.  You have:

     quote cwd ''
     quote cwd ''SOME.MAIN.FRAME.DATA.SETS'

I am assuming on the first command this is two single quotes and in the second it is a typo and it is really:

    quote cwd 'SOME.MAIN.FRAME.DATA.SETS'

You should be able to take the first quote cwd out.  In fact you should be able to just do:

        CD  'SOME.MAIN.FRAME.DATA.SETS'

 

by: allanau20Posted on 2007-05-29 at 19:24:41ID: 19176956

Thanks for the insight.

At least the file FTPed successfully.

Thanks for your help again!

20120131-EE-VQP-002

3 Ways to Join

30-Day Free Trial

The Experts

98% positive feedback on 31,087 answers since March 2000. angeliii is a Microsoft Most Valuable Professional for his work with MS SQL Server & Develoment.

He has also proven his knowledge of Visual Basic Programming, PHP Scripting and Oracle Databases.

The Experts

97% positive feedback on 10,752 answers since July 2000. lrmoore has more than 18 years experience in the networking industry.

The six-time Mircosoft MVPs specialties include firewalls, virtual private networking, and network management.

Testimonials

"...and excellent source for support... Kind of like having your very own IT dept." Electriciansnet

Testimonials

"I was apprehensive at signing up at first. However... it has already made my life as an IT administrator much easier." JaCrews

Testimonials

"WOW! You guys have great, active, and knowledgeable people on here." moore50

Business Clients

Business Clients

In the Press

"If you’ve got a question... Experts Exchange can supply an answer.”

In the Press

"...an invaluable aid for both IT professionals and those who require tech support."

In the Press

"where IT professionals provide quick answers on just about any topic"

Business Account Plans

Loading Advertisement...