• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • The Save-Restore Commands

    January 26, 2005 Hey, Ted

    We have a new machine and have joined the world of logical partitioning. We have a partition for production and one for development. I am struggling with copying data and source code between the two machines. FTP copies source members without a problem, but it drops the modification dates on the source records. To copy data files, I’ve been transmitting save files in binary mode, which is a hassle. Also, I’d like to set up a scheduled job to refresh certain files on the test system from the production system at night, and while FTP would work, it would be difficult for my job to determine if the transmission succeeded. Do you have any other ideas?

    –Andrew

    I use FTP heavily, but only because it’s convenient. For robust computing, you need something more than cobbled-together utilities. The iSeries system on which I spend most of my time also has two partitions, as you’ve described. The administrator has it set up for both TCP/IP and SNA communications. He tells me that it is possible to use both protocols if you have an Ethernet card for each partition.

    If you can use SNA, let me suggest you look at the SAVRSTxxx commands, especially Save Restore Object (SAVRSTOBJ). Two other commands that you might need occasionally are Save Restore Library (SAVRSTLIB) and Save Restore Objects (SAVRST), for the IFS. There are also Save Restore Configuration (SAVRSTCFG), Save Restore Changed Objects (SAVRSTCHG), and Save Restore Doc/Lib Object (SAVRSTDLO) commands. The SAVRSTxxx commands have been around for a while, but I never had much use for them until I began working on a partitioned system.

    The SAVRSTxxx commands go through a process similar to the binary FTP of save files, but without the hassle. Here are some examples.

    This command copies data file SOMEFILE from the production system to the TEST system.

    SAVRSTOBJ OBJ(SOMEFILE) LIB(MYLIB) RMTLOCNAME(TEST) 
       OBJTYPE(*FILE)
    

    This command copies an entire source physical file to the test system.

    SAVRSTOBJ OBJ(QRPGLESRC) LIB(MYLIB) RMTLOCNAME(TEST)
    

    Here’s a command to copy one RPG source member, MYSRCMBR, from production to TEST. Notice MBROPT(*NEW) was used here, because the source member did not already exist in QRPGLESRC on the TEST system.

    SAVRSTOBJ OBJ(QRPGLESRC) LIB(MYLIB) RMTLOCNAME(TEST)
       OBJTYPE(*FILE) FILEMBR((QRPGLESRC (MYSRCMBR))) MBROPT(*NEW)                
    


    If all goes well, you’ll see message CPCAD80 (x objects saved and restored). If you get message CPFAD8D (an error occurred during the SAVRSTOBJ operation), check the messages in the job log to find the exact cause. Depending on things like object ownership and authority, you may have to specify MBROPT(*ALL) ALWOBJDIF(*ALL). If so, you have a problem, because you must have *ALLOBJ authority to use ALWOBJDIF(*ALL). Do not assume that the transfer did not take place when you see CPFAD8D. The transfer may have been successful, but the error may have been sent because authority changes took place.

    Another nice thing about the SAVRSTxxx commands is that they do not require enrollment in the system distribution directory, as SNDNETF (Send Network File) does.

    –Ted

    Click here to contact Ted Holt by e-mail.

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Tags:

    Sponsored by
    VISUAL LANSA 16 WEBINAR

    Trying to balance stability and agility in your IBM i environment?

    Join this webinar and explore Visual LANSA 16 – our enhanced professional low-code platform designed to help organizations running on IBM i evolve seamlessly for what’s next.

    🎙️VISUAL LANSA 16 WEBINAR

    Break Monolithic IBM i Applications and Unlock New Value

    Explore modernization without rewriting. Decouple monolithic applications and extend their value through integration with modern services, web frameworks, and cloud technologies.

    🗓️ July 10, 2025

    ⏰ 9 AM – 10 AM CDT (4 PM to 5 PM CEST)

    See the webinar schedule in your time zone

    Register to join the webinar now

    What to Expect

    • Get to know Visual LANSA 16, its core features, latest enhancements, and use cases
    • Understand how you can transition to a MACH-aligned architecture to enable faster innovation
    • Discover native REST APIs, WebView2 support, cloud-ready Azure licensing, and more to help transform and scale your IBM i applications

    Read more about V16 here.

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Brooks Launches ExcelliPrint for IPDS Conversion SkyView Addresses Compliance with New OS/400 Security Service

    Leave a Reply Cancel reply

Volume 5, Number 4 -- January 26, 2005
THIS ISSUE
SPONSORED BY:

Advanced Systems Concepts
Patrick Townsend & Associates
Guild Companies

Table of Contents

  • An Introduction to WDSc Table Views
  • Another Reason to Use P-Fields
  • The Save-Restore Commands

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • Liam Allan Shares What’s Coming Next With Code For IBM i
  • From Stable To Scalable: Visual LANSA 16 Powers IBM i Growth – Launching July 8
  • VS Code Will Be The Heart Of The Modern IBM i Platform
  • The AS/400: A 37-Year-Old Dog That Loves To Learn New Tricks
  • IBM i PTF Guide, Volume 27, Number 25
  • Meet The Next Gen Of IBMers Helping To Build IBM i
  • Looks Like IBM Is Building A Linux-Like PASE For IBM i After All
  • Will Independent IBM i Clouds Survive PowerVS?
  • Now, IBM Is Jacking Up Hardware Maintenance Prices
  • IBM i PTF Guide, Volume 27, Number 24

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle