<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8943221</id><updated>2011-12-27T22:15:19.390Z</updated><category term='images'/><category term='indexes'/><category term='subsystems'/><category term='frog'/><category term='news'/><category term='logicals'/><category term='free'/><category term='development'/><category term='soa'/><category term='DST'/><category term='api'/><category term='query'/><category term='AS400 Analyst'/><category term='webserver'/><category term='iseries'/><category term='redbook'/><category term='5250'/><category term='pci'/><category term='mandrake'/><category term='video'/><category term='mambo'/><category term='IBM System i'/><category term='connection strings'/><category term='transform'/><category term='free format'/><category term='jsf'/><category term='ssd'/><category term='host'/><category term='java'/><category term='business partners'/><category term='LANSA&apos;s integrated software'/><category term='vendor'/><category term='os/400'/><category term='Christmas'/><category term='manuals v5r4'/><category term='halcyon'/><category term='crypt'/><category term='networking'/><category term='rest'/><category term='Programmer AS400'/><category term='v5r4'/><category term='dns'/><category term='groovy'/><category term='iseries navigator'/><category term='modernisation'/><category term='benchmarking'/><category term='was'/><category term='hotspot'/><category term='websmart'/><category term='AS400 journalling'/><category term='AS400 Analyst Programmer'/><category term='mail'/><category term='os400'/><category term='client'/><category term='ibm i'/><category term='messaging'/><category term='tomcat'/><category term='command'/><category term='demo'/><category term='as400 webapp Deployment'/><category term='tshirt'/><category term='sleep'/><category term='excel'/><category term='Report Layout Utility'/><category term='prtf'/><category term='jtopen'/><category term='Analyst Programmer'/><category term='used as400'/><category term='as400 manuals v5r4'/><category term='nfs'/><category term='web enable'/><category term='catalog'/><category term='stored procedures'/><category term='wdsc'/><category term='high availability'/><category term='migration'/><category term='qsh'/><category term='web services'/><category term='prestart'/><category term='data stream'/><category term='seo'/><category term='dds'/><category term='Utility Report'/><category term='cgi'/><category term='change control'/><category term='file systems'/><category term='appservers'/><category term='as400'/><category term='rpg'/><category term='unix'/><category term='twitter'/><category term='HSSF'/><category term='Layout Utility'/><category term='server'/><category term='APIs at Work'/><category term='Privacy Policy'/><category term='subfiles'/><category term='erp'/><category term='replication'/><category term='Deployment as400'/><category term='LANSA&apos;s integrated'/><category term='SQL'/><category term='funny'/><category term='web'/><category term='cl'/><category term='storage'/><category term='free as400 software'/><category term='odbc'/><category term='db2'/><category term='encryption'/><category term='manuals'/><category term='css'/><category term='webcast'/><category term='i5'/><category term='websphere'/><category term='tiles'/><category term='qsecofr'/><category term='QGYOLJBL'/><category term='.net'/><category term='sbmjob'/><category term='performance'/><category term='smart cube'/><category term='user space'/><category term='eclipse'/><category term='redbooks'/><category term='blogs'/><category term='journalling'/><category term='sites'/><category term='xml'/><category term='managed hosting'/><category term='security'/><category term='emulators'/><category term='sourceforge'/><category term='as400blog'/><category term='lansa'/><category term='mqt'/><category term='links'/><category term='i5/os'/><category term='HA'/><category term='PostgreSQL'/><category term='struts'/><category term='software'/><category term='html'/><category term='ssl'/><category term='software LANSA&apos;s'/><category term='QMHLJOBL'/><category term='encode'/><category term='zend'/><category term='system request'/><category term='examples'/><category term='system i'/><category term='integrated software'/><category term='jdbc'/><category term='debugging'/><category term='as400 Query'/><category term='v5r4 as400'/><category term='webapp Deployment'/><category term='mssql'/><category term='as400 manuals'/><category term='ibm'/><category term='cms'/><category term='browser'/><category term='exit programs'/><category term='webhost'/><category term='Spring Struts AS400'/><category term='Built PC'/><category term='windows'/><category term='midrange'/><category term='ifs'/><category term='AS400 Spring'/><category term='Spring Struts'/><category term='upgrades'/><category term='database'/><category term='linux'/><category term='apache'/><category term='blunder'/><category term='debug'/><category term='hibernate'/><category term='cvs'/><category term='me'/><category term='ant'/><category term='soap'/><category term='New PC'/><category term='php'/><category term='ajax'/><category term='backups'/><category term='v6r1'/><category term='Report Layout'/><category term='as400 webapp'/><category term='iseries access'/><category term='virtual server'/><category term='Struts AS400'/><category term='housekeeping'/><category term='QNTC'/><category term='jobs'/><category term='ole'/><category term='dates'/><category term='history'/><category term='data queue'/><category term='IBM System i APIs at Work'/><category term='zip'/><title type='text'>AS400 Iseries</title><subtitle type='html'>AS400 | System i | i5 | Iseries  | i5/OS | OS/400 tips, jobs, answers, information</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default?start-index=101&amp;max-results=100'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1891</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8943221.post-3384157566013153505</id><published>2011-05-14T08:44:00.005+01:00</published><updated>2011-05-14T09:18:36.289+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IBM System i APIs at Work'/><category scheme='http://www.blogger.com/atom/ns#' term='IBM System i'/><category scheme='http://www.blogger.com/atom/ns#' term='APIs at Work'/><title type='text'>IBM System i APIs at Work</title><content type='html'>IBM System i APIs at Work&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/1583470697/ref=as_li_ss_tl?ie=UTF8&amp;tag=as400blog-20&amp;linkCode=as2&amp;camp=217145&amp;creative=399353&amp;creativeASIN=1583470697"&gt;&lt;img src="http://1.bp.blogspot.com/-wpDdKkTj6TM/Tc4zwGfcBAI/AAAAAAAABew/csVugUBjdqY/s320/0978158347069_500X500.jpg" alt="IBM System i APIs at Work" width=99%/&gt;Click to Read Reviews and look inside book on Amazon&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Product Details&lt;br /&gt;Paperback: 550 pages&lt;br /&gt;Publisher: Mc Press; 2nd edition (September 1, 2007)&lt;br /&gt;Language: English&lt;br /&gt;ISBN-10: 1583470697&lt;br /&gt;ISBN-13: 978-1583470695&lt;br /&gt;Product Dimensions: 8.8 x 7 x 1.4 inches&lt;br /&gt;Shipping Weight: 1.8 pounds&lt;br /&gt;Average Customer Review: 5.0 out of 5 stars&lt;br /&gt;Amazon Bestsellers Rank: #1,211,750 in Books&lt;br /&gt;&lt;br /&gt;APIs are OS provided tools that allow us to extend our ability to solve business problems on the system i. Most System i developers do not have a good understanding  of the available APIs or their workings within i5/OS so are not able to get the best out of them.&lt;br /&gt;&lt;br /&gt;IBM API expert author Bruce Vining guide us to mastering the wide APIs available with System i i5/os with real examples that can be applied in your environment.&lt;br /&gt;&lt;br /&gt;Developers these days have to integrate applications running on various operating systems and languages to implement business rules and requirements. APIs allow you to  solve some of the harder to crack implementation issues by giving you access to the lower level structures of the os or application, making these some of the most useful tools in your arsenal.&lt;br /&gt;&lt;br /&gt;• New chapters covering topics such as exit point concepts, Integrated File System, date and time, cryptographic services, TCP/IP, and more &lt;br /&gt;• Sorting, character data conversion, and user application information &lt;br /&gt;• APIs are covered in depth &lt;br /&gt;• Fully updated code on previous APIs to bring them up to newer standards &lt;br /&gt;• Updates to API changes since the previous edition &lt;br /&gt;• Modernized RPG code to demonstrate current coding style &lt;br /&gt;• An Appendix with COBOL examples and implementation including API equivalents for RPG support of memory management, bit testing, edit words, and more &lt;br /&gt;• Check Your Knowledge tasks at the conclusion of each chapter with solutions provided in RPG and COBOL Write client and server applications that enable your System i to communicate with other systems, such as PCs, using sockets&lt;br /&gt;&lt;br /&gt;What Jon Paris said about this book&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;It is difficult to imagine a more comprehensive guide to APIs than that contained within these covers. From list APIs, to Telnet, to encryption, Bruce covers them all and does so in an informative and entertaining fashion. Not content simply to detail their naked operation, Bruce also demonstrates the usage of these APIs as the foundations for a number of utility programs that most shops will soon spot a use for in their daily operations. Even better - the examples are terrific demonstrations of the power of the RPG IV language. If you were to purchase this book for no other reason than to study the examples you would get excellent value for money. Hopefully some of the folks involved in producing IBM documentation will read this book and take the hint! COBOL users are not left out either - Bruce provides COBOL versions of all of the code. &lt;br /&gt;&lt;br /&gt;At well over 700 pages this is indeed a weighty tome, but unlike so many others there's no "fat" here - just solid content that will satisfy your hunger for knowledge&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/04/what-is-lansa.html"&gt;What Is Lansa&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;IBM System i APIs at Work&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3384157566013153505?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com' title='IBM System i APIs at Work'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3384157566013153505/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2011/05/ibm-system-i-apis-at-work.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3384157566013153505'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3384157566013153505'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2011/05/ibm-system-i-apis-at-work.html' title='IBM System i APIs at Work'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-wpDdKkTj6TM/Tc4zwGfcBAI/AAAAAAAABew/csVugUBjdqY/s72-c/0978158347069_500X500.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-563537374607335825</id><published>2010-04-02T01:10:00.004+01:00</published><updated>2010-08-22T17:46:48.895+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LANSA&apos;s integrated'/><category scheme='http://www.blogger.com/atom/ns#' term='lansa'/><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='software LANSA&apos;s'/><category scheme='http://www.blogger.com/atom/ns#' term='LANSA&apos;s integrated software'/><category scheme='http://www.blogger.com/atom/ns#' term='integrated software'/><title type='text'>What is LANSA</title><content type='html'>What is LANSA&lt;br /&gt;&lt;br /&gt;LANSA's integrated software suite, from &lt;a href="http://www.lansa.com/products/index.htm"&gt;LANSA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;LANSA’s software suite contains four flagship products, and a set of ancillary products, that can be deployed individually to solve specific requirements or woven into an entire infrastructure. Think of each product as a building block that is not only optimized for a specific task but that is also a big step forward in deploying a new platform.&lt;br /&gt;&lt;br /&gt;The only IDE you will ever need for Windows or System i&lt;br /&gt;&lt;br /&gt;Visual LANSA is the name of our Integrated Development Environment (IDE) for building, modernizing and integrating business applications. Visual LANSA has followed a twenty-year product evolution path that has proven its superiority over other application development tools and methodologies. Today Visual LANSA is used by thousands of developers, spread across different industries and countries around the world, who are all in pursuit of the same objective: maximum productivity and simplicity throughout the entire software development life cycle.&lt;br /&gt;&lt;br /&gt;The fastest and most certain way to modernize your System i applications&lt;br /&gt;&lt;br /&gt;RAMP is a complete process for rapidly modernizing legacy software systems. Before the advent of RAMP, users of System i, iSeries or AS/400 servers facing application modernization challenges were forced to either throw it all away and start again or continue to build upon, and be limited by, their legacy 5250 business systems. Now RAMP offers the perfect balance between those two extremes. By providing an application development framework that combines functionality from green-screen applications with new visual components in a rich graphical user interface, RAMP addresses your immediate tactical needs and sets you on a path of evolution without limits.&lt;br /&gt;&lt;br /&gt;Flexible integration of business processes, systems, applications and data&lt;br /&gt;&lt;br /&gt;LANSA Integrator, is a versatile and extensible integration server that is used by programmers to exchange data in any format or via any protocol and can also be used to remotely call functions in other systems. LANSA Integrator enables integration of Application-to-Application (A2A) and Business-to-Business (B2B) transactions through XML and Java services. LANSA Integrator allows bi-directional XML – and other data formats – to be exchanged between you and your trading partners, regardless of platform. LANSA Integrator appeals to developers with LANSA, &lt;a href="http://as400blog.blogspot.com/2010/04/what-is-rpgsp-rpg-smart-pages.html"&gt;RPG&lt;/a&gt;, COBOL or Java skills and is regarded as the Swiss army knife of the integration world.&lt;br /&gt;&lt;br /&gt;LANSA Composer is a Business Process Integration (BPI) tool that gives business analysts a top-down view of end-to-end business processes. LANSA Composer provides connectivity between different systems in the same way as LANSA Integrator, but differs by including a graphical mapping tool and a process orchestration engine. These additions make LANSA Composer a highly visual and code-free tool that any business analyst or expert user can operate. The purpose of a BPI tool like LANSA Composer is to automate manual processes and eliminate rekeying of data by reducing the amount of paper, email, fax and human interaction required to complete a given business process.&lt;br /&gt;&lt;br /&gt;ERP extensions, middleware, reporting and eCommerce&lt;br /&gt;&lt;br /&gt;Alongside these flagship offerings, LANSA has products in areas ancillary to the main LANSA platform like end-user reporting (LANSA Client) and middleware (LANSA Open for .NET). We have also created specific application products where we saw a market need for an out-of-the-box solution e.g. an open-source ERP package, an eCommerce store, an EDI gateway, an AS2 compliant secure communications server and a Product Information Management (PIM) solution for on-boarding to the Global Data Synchronization Network (GDSN).&lt;br /&gt;&lt;br /&gt;LANSA your one-stop shop&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/04/what-is-rpgsp-rpg-smart-pages.html"&gt;What is RPG Smart Pages&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The theme running throughout our suite is that all products are built on, and share the underlying services, of the LANSA platform. We, along with our vibrant business partner community, have broadened our value proposition beyond tools and technology into application solutions so that LANSA can be your one-stop-shop&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-563537374607335825?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='What is LANSA'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/563537374607335825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-lansa.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/563537374607335825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/563537374607335825'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-lansa.html' title='What is LANSA'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6441632086810812642</id><published>2010-04-02T01:02:00.001+01:00</published><updated>2010-04-02T23:56:00.542+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpg'/><category scheme='http://www.blogger.com/atom/ns#' term='system i'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>What is RPGsp (RPG Smart Pages)</title><content type='html'>What is RPGsp (RPG Smart Pages)&lt;br /&gt;&lt;br /&gt;RPGsp is an award-winning rapid Web development environment that has been proven and trusted by thousands of System i users. Whether you need to extend your existing legacy programs or build new applications, RPGsp can deliver phenomenal results in a short amount of time. &lt;br /&gt;&lt;br /&gt;With RPGsp, you will save time by using existing RPG resources and not having to rewrite code or retrain your staff. You will increase your productivity with the help of cutting edge tools like intuitive point-and-click wizards, HTML design, visual debugging, advanced RPG editing, code analysis, and hybrid compiling. You will instantly construct advanced applications like dynamic graphs, inquiries, drill-downs, BI dashboards, and file maintenances. RPGsp supports the latest in SOA, Web Services, AJAX, Web 2.0, and eCommerce to help you build the most interactive and flexible applications. &lt;br /&gt;&lt;br /&gt;Native System i Web Development&lt;br /&gt;Web applications are business applications. Why not then use RPG, the platform's undisputed best business language, to build modern &lt;a href="http://as400blog.blogspot.com/2010/04/what-is-ibm-i-access-for-web.html"&gt;IBM i Web&lt;/a&gt; applications? RPGsp (RPG Smart Pages) enhances the native RPG language to have powerful Web capabilities. This makes it a true Web development language, with all of the features a modern Web language should have, including AJAX, SOA, Dynamic HTML, Forms, Cookies, and much more. System i developers feel right at home in this environment. Finally, you can get to the Web without middleware, third party application servers, or Websphere. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Short Learning Curve&lt;br /&gt;Build on what you already know. If you are already familiar with standard RPG, you can start building Web applications right away. Even non-programmers can create applications in minutes by using any of the powerful wizards that are available. You will have access to comprehensive documentation, numerous examples, and detailed HTML/RPG references to help as you begin coding your applications. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Rapid Development&lt;br /&gt;With RPGsp, application development is now faster than ever before. You can build all kinds of applications within minutes. Choose from an abundance of rapid application development tools to speed development tasks. Instantly build advanced dynamic fields like data-driven dropdowns and list boxes. Reuse any of your existing code, including RPG, CL , DDS, and HTML. Control all HTML attributes in a point and click manner, and let our comprehensive designer write most of the HTML for you. Plus, you can quickly build applications such as advanced database inquiries, file maintenances, drill-downs, header/detail screens, pop-up selection windows, data entry forms, and much more without manual coding. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Numerous Wizards, Templates, and Snippets&lt;br /&gt;New to Web development? Our IDE is packed with wizards and templates to get you going. Just pick a template and RPGsp will walk you through creating the application. You can quickly create working programs without writing any code. You will end up with clean ILE RPG code (free or fixed format) working together with dynamic HTML output. As you maintain your application, you will have access to various code snippets for RPG, CSS, and JavaScript. Also included is a ready-made AJAX library which allows you to easily integrate Web 2.0 features, exchange XML, or use Web services. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Built-in Charting&lt;br /&gt;Creating interactive charts, dashboards, and KPI's with RPGsp is as simple as point and click. Just follow our comprehensive step-by-step wizards to build any type of single-series, multi-series, or combination chart. Our wizards offer hundreds of options to help you build comprehensive applications for visualizing your business data. Pick from 2D or 3D Column Charts, Bar Charts, Line Charts, Area Charts, Pie Charts, Doughnut Charts, and more. Each type of chart is completely customizable with data being built either by record level RPG code or SQL. You can easily make the charts interact with each other or with other Web components. Users may click on the chart to drill-down and/or activate another chart. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Intelligent Code Editing and Design Tools&lt;br /&gt;RPGsp comes with an award winning code editor. It is full of helpful features such as HTML reformatting, fixed to free format conversion, intelligent prompting, code outlines, syntax highlighting, and context-sensitive help. It supports both Web and back-end languages, including JavaScript, CSS, HTML, RPG, CL, and DDS. In addition, you can visually inspect your application with our built-in HTML designer. The designer can automatically render dynamic RPG and resources residing on the System i. It may also be launched in Split-View, which allows developers to work with Code and Design at the same time in one view. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Integrated Visual Debugger&lt;br /&gt;RPGsp offers 3 different ways to debug RPG-based web applications, including a completely integrated Visual Debugger. The Visual Debugger provides unique features such as variable evaluation on hover, job-transparent debugging, and even the ability to step back in time to examine execution history. You will be able to set breakpoints and visually step through running Web applications while reviewing both RPG and HTML code in one view. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Cross-platform Capabilities&lt;br /&gt;RPGsp pages can read or update Oracle, SQL Server, MySQL, MS Access, and other databases. Created programs will be able to communicate with other Web applications running on any platform. Your applications will also have complete support for SOA, XML, AJAX, and Web services.&lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Unmatched Performance&lt;br /&gt;RPGsp produces lightening fast CGI code. Our unique "look-ahead" compile technology allows for performance up to four times faster than other native technologies, such as CGIDEV2. Your applications will run entirely in batch processing. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Rock Solid Security&lt;br /&gt;RPGsp applications reside entirely on the System i and take full advantage of the system's object-based architecture to protect against viruses, malicious scripts, hackers, and other threats. You also receive another layer of security by having your Web applications separated from the rest of the system. Complete support for SSL is provided. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Automated Server Configuration&lt;br /&gt;Install the development environment and configure the Web server in less than five minutes using RPGsp's intelligent server analysis and configuration utilities. Effortlessly configure logging and user authentication with easy to use wizards. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Automatic Conversions&lt;br /&gt;Move your existing applications to the Web rapidly. No more screen-scrapping or web-facing. With our conversion process, your applications will be transformed into true Web applications very quickly. All of your converted screens will be completely customizable with no ties to the original Display Files and no limitations of green-screens. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Integrated Source Control &amp; Change Management&lt;br /&gt;RPGsp includes change management exit points and an integrated multi-user source control system to prevent developers from stepping on each others' toes as they work on Web applications, green-screen programs, and modernization projects. Source code is checked in and out within the RPGsp IDE using a simple point-and-click interface. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;A Smart Investment&lt;br /&gt;You will never have to worry about hidden costs, lengthy training, and lack of support. Join the thousands of satisfied clients around the world who already rely on our state-of-the-art tools and industry-leading technical support. Leverage your existing assets, deploy your projects quickly, and be productive from day one with RPGsp. &lt;br /&gt;^ Back to top ^ &lt;br /&gt;&lt;br /&gt;Backed by an Industry Leader&lt;br /&gt;Profound Logic Software is a proven provider of the best tools, services, and support for System i Web development projects. We have been developing modern System i Web applications and tools for years. After countless successful implementations of our technology and multiple awards for innovation, we have again and again proven that we have what it takes to effectively modernize and add value to AS400, iSeries, and i applications. Profound Logic's impressive list of System i customers further demonstrates our capacity to deliver outstanding results with our products and services. Once you engage with Profound Logic, you will immediately notice our superb level of support and our commitment to providing the best modernization solutions for the System i.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6441632086810812642?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='What is RPGsp (RPG Smart Pages)'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6441632086810812642/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-rpgsp-rpg-smart-pages.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6441632086810812642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6441632086810812642'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-rpgsp-rpg-smart-pages.html' title='What is RPGsp (RPG Smart Pages)'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5604039497042377698</id><published>2010-04-02T00:56:00.001+01:00</published><updated>2010-04-19T23:55:54.496+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='ibm i'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>What is IBM i Access for Web</title><content type='html'>What is IBM i Access for Web&lt;br /&gt;&lt;br /&gt;IBM i Access for Web offers browser-based access to IBM i. IBM i Access for Web enables end users to leverage business information, applications, and resources across an enterprise by extending the IBM i resources to the client desktop through a web browser.&lt;br /&gt;&lt;br /&gt;See the Customer Comments on IBM i Access products!&lt;br /&gt;&lt;br /&gt;IBM i Access for Web...&lt;br /&gt;is system based; there is no code running on the desktop.&lt;br /&gt;is implemented using Java Servlet technology.&lt;br /&gt;uses industry standard protocols - HTTP, HTTPS and HTML.&lt;br /&gt;is lightweight, requiring only a browser on the client.&lt;br /&gt;runs batch commands, provides access to database, integrated file system, printers, printer output, and messages, and a 5250 interface.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;V5R4 iSeries Access for Web is supported on systems with V5R4 and V5R3 i5/OS TM. V5R3 iSeries Access Family (5722-XW1) customers can acquire V5R4 iSeries Access for Web and stay at V5R3 i5/OS. Refer to Ordering/Upgrading.&lt;br /&gt;V5R4 and V5R3 iSeries Access for Web servlets are supported with these web application systems. Refer to the service pack PTFs page for PTF requirements:&lt;br /&gt;Web application system integrated with i5/OS (V5R4 only)&lt;br /&gt;WebSphere Application Server (WAS) - Express V6.1 for i5/OS, WAS V6.1 for i5/OS, and WAS V6.1 Network Deployment for i5/OS&lt;br /&gt;WAS - Express V6.0 for OS/400 and WAS V6.0 for OS/400&lt;br /&gt;WAS - Express for iSeries V5.1 and V5.0&lt;br /&gt;WAS for iSeries V5.1 and V5.0 (Base and Network Deployment Editions)&lt;br /&gt;Apache Software Foundation's Jakarta Tomcat (included with the IBM HTTP Server)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In addition to the above, the IBM i Access for Web portlet code can be used with any of the following portal systems:&lt;br /&gt;IBM Workplace Services Express V2.6 and V2.5&lt;br /&gt;WebSphere Portal for Multiplatforms V6.0&lt;br /&gt;WebSphere Portal for Multiplatforms V5.1.0.1&lt;br /&gt;WebSphere Portal Express for Multiplatforms V5.0.2&lt;br /&gt;WebSphere Portal Express Plus for Multiplatforms V5.0&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/04/what-is-websmart.html"&gt;what is websmart&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More details on IBM i Access for Web to follow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5604039497042377698?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='What is IBM i Access for Web'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5604039497042377698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-ibm-i-access-for-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5604039497042377698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5604039497042377698'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-ibm-i-access-for-web.html' title='What is IBM i Access for Web'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-7930112743087990369</id><published>2010-04-02T00:50:00.000+01:00</published><updated>2010-04-02T00:50:12.672+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='websmart'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>What is WebSmart</title><content type='html'>What is WebSmart&lt;br /&gt;&lt;br /&gt;WebSmart is the Proven &amp; Award Winning System i &amp; multi-platform rapid Web development tool, from BCD. WebSmart comes in two editions:&lt;br /&gt;&lt;br /&gt;WebSmart ILE helps you produce native System i-centric CGI web applications that access DB2400, MS SQL and MySql databases. The apps run in the native Apache HTTP web server shipped with every System i.&lt;br /&gt;&lt;br /&gt;WebSmart PHP helps you produce PHP applications that run on multiple platforms- System i, Windows, Linux or Unix and access databases such as DB2/400, MySQL and others.&lt;br /&gt;&lt;br /&gt;Both editions of WebSmart let you extend or develop new web applications for any industry or application. You can create B2B, B2C and e-Commerce sites including on-line ordering, inquiries and maintenance programs, and implement browser-based or SOA (web services) applications. And WebSmart fully supports AJAX so you can build rich web content applications that behave like Windows apps.&lt;br /&gt;&lt;br /&gt;If you are looking for a popular alternative to IBM’s WebSphere, then take a close look at WebSmart as it is significantly easier to learn and uses way fewer resources than WebSphere.&lt;br /&gt;&lt;br /&gt;WebSmart Highlights&lt;br /&gt;&lt;br /&gt;Rapid New Web Development&lt;br /&gt;Modernize Legacy Apps&lt;br /&gt;Multi-Platform: ILE CGI or PHP&lt;br /&gt;Access non-iSeries based data bases like MySQL and MSSQL&lt;br /&gt;Visual HTML Editing&lt;br /&gt;Robust Enterprise Apps&lt;br /&gt;Productive IDE for RPG and non-RPG Programmers&lt;br /&gt;Web 2.0 features such as Web Services, SOX, AJAX, etc&lt;br /&gt;Change Management&lt;br /&gt;Free Trials with Unlimited Support&lt;br /&gt;IBM distributes WebSmart globally with V5R4 and new System i sales&lt;br /&gt;Integrated Visual Debugger&lt;br /&gt;Charts and Graphs with Free SmartCharts&lt;br /&gt;SQL Support&lt;br /&gt;Professional Services&lt;br /&gt;Free License: Nexus Portal &amp; ECM. Secure framework for Apps, Docs, Dashboards…&lt;br /&gt;Integrated real-time web Clover Query tool for end-users and developers.&lt;br /&gt;Proven with 1,750+ customers, 1,500,000 users and 13 Industry Awards&lt;br /&gt;Ideal for Small, Medium and Large organizations – Immediate Results&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-7930112743087990369?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='What is WebSmart'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/7930112743087990369/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-websmart.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7930112743087990369'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7930112743087990369'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/04/what-is-websmart.html' title='What is WebSmart'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5936171147312954810</id><published>2010-03-27T17:46:00.001Z</published><updated>2010-08-29T16:09:23.379+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AS400 Analyst'/><category scheme='http://www.blogger.com/atom/ns#' term='Analyst Programmer'/><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='AS400 Analyst Programmer'/><category scheme='http://www.blogger.com/atom/ns#' term='Programmer AS400'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS400 Analyst Programmer  - Dublin</title><content type='html'>AS400 Analyst Programmer  &lt;br /&gt;&lt;br /&gt;Contract&lt;br /&gt;Immediate contract requirement for an experienced AS400 Analyst to work in a large Bank in Dublin City. AS400 RPG IV, RPGILE and CL Development.&lt;br /&gt;Role:&lt;br /&gt;Write and design technical specifications.&lt;br /&gt;Write and execute unit test scripts, system test strategy and scripts.&lt;br /&gt;Write code changes in RPGILE on development AS400.&lt;br /&gt;Skills:&lt;br /&gt;At least 10 years RPG IV experience.&lt;br /&gt;Previous experience of financial systems, working within the banking sector is required.&lt;br /&gt;If you would like to apply for this role and would like to hear more about this opportunity please email your CV to (see below)&lt;br /&gt;Location Dublin, Ireland&lt;br /&gt;Country Ireland&lt;br /&gt;Start Date ASAP&lt;br /&gt;Duration 6 months&lt;br /&gt;Rate Market rates in Euro.&lt;br /&gt;Employment Business CPL Solutions&lt;br /&gt;Contact Janet Smullen&lt;br /&gt;Email Janet.Smullen.5CF1F.98727@mail.jobserve.com&lt;br /&gt;Reference JS98179&lt;br /&gt;Posted Date 24/03/2010 15:19:04&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-sbmjob-examples.html"&gt;as400 sbmjob&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-journalling.html"&gt;as400 journalling&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5936171147312954810?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/2010/03/as400-jobs-lead-db2-dbazos-or-aix-or.html' title='AS400 Analyst Programmer  - Dublin'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5936171147312954810/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-analyst-programmer-dublin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5936171147312954810'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5936171147312954810'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-analyst-programmer-dublin.html' title='AS400 Analyst Programmer  - Dublin'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8315682482698661676</id><published>2010-03-27T16:29:00.002Z</published><updated>2010-08-29T16:07:47.702+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='journalling'/><category scheme='http://www.blogger.com/atom/ns#' term='AS400 journalling'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS400 journalling</title><content type='html'>AS400 journalling&lt;br /&gt;&lt;br /&gt;How many sites use as400 journalling in their applications. Seems to be that a lot of as400 developers dont actually understand journalling and the data integrity and audit capabilities it can add to an enterprise level system.&lt;br /&gt;&lt;br /&gt;The DB2 UDB for AS400 journalling support supplies an audit trail and forward and backward recovery. Forward recovery can be used to take an older version of a table and apply the changes logged on the journal to the table. Backward recovery can be used to remove changes logged on the journal from the table.&lt;br /&gt;&lt;br /&gt;When an SQL collection is created, a journal and journal receiver are created in the collection. When SQL creates the journal and journal receiver, they are only created on a user auxiliary storage pool (ASP) if the ASP clause is specified on the CREATE COLLECTION or the CREATE SCHEMA statement. However, because placing journal receivers on their own ASPs can improve performance, the person managing the journal might want to create all future journal receivers on a separate ASP.&lt;br /&gt;&lt;br /&gt;When a table is created into the collection, it is automatically journaled to the journal DB2 UDB for AS/400 created in the collection (QSQJRN). A table created in a non-collection will also have journaling started if a journal named QSQJRN exists in that library. After this point, it is your responsibility to use the journal functions to manage the journal, the journal receivers, and the journaling of tables to the journal. For example, if a table is moved into a collection, no automatic change to the journaling status occurs. If a table is restored, the normal journal rules apply. That is, if the table was journaled at the time of the save, it is journaled to the same journal at restore time. If the table was not journaled at the time of the save, it is not journaled at restore time.&lt;br /&gt;&lt;br /&gt;The journal created in the SQL collection is normally the journal used for logging all changes to SQL tables. You can, however, use the system journal functions to journal SQL tables to a different journal. This may be necessary if a table in one collection is a parent to a table in another collection. This is because DB2 UDB for AS/400 requires that the parent and dependent file in a referential constraint be journaled to the same journal when updates or deletes are performed to the parent table.&lt;br /&gt;&lt;br /&gt;A user can stop journaling on any table using the journal functions, but doing so prevents an application from running under commitment control. If journaling is stopped on a parent table of a referential constraint with a delete rule of NO ACTION, CASCADE, SET NULL, or SET DEFAULT, all update and delete operations will be prevented. Otherwise, an application is still able to function if you have specified COMMIT(*NONE); however, this does not provide the same level of integrity that as400 journalling and commitment control provide&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-sbmjob-examples.html"&gt;as400 sbmjob&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-prtf-report-layout-utility.html"&gt;as400 prtf report layout utility&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8315682482698661676?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 journalling'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8315682482698661676/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-journalling.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8315682482698661676'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8315682482698661676'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-journalling.html' title='AS400 journalling'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6128336929770449182</id><published>2010-03-27T16:18:00.001Z</published><updated>2010-08-29T16:05:50.895+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Layout Utility'/><category scheme='http://www.blogger.com/atom/ns#' term='Utility Report'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Layout'/><category scheme='http://www.blogger.com/atom/ns#' term='prtf'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Layout Utility'/><title type='text'>AS400 PRTF - Report Layout Utility</title><content type='html'>AS400 PRTF - Report Layout Utility&lt;br /&gt;&lt;br /&gt;The report layout utility (RLU),  AS400 licensed program, allows you to create and edit source members on the AS/400 system. RLU source members in source physical&lt;br /&gt;files contain the printer file Data Description Specifications (DDS) for a report&lt;br /&gt;design that you lay out by using RLU. &lt;br /&gt;&lt;br /&gt;The report design looks like an actual listing&lt;br /&gt;you generate with a high-level-language (HLL) program. Using RLU, you specify&lt;br /&gt;the information required for DDS, and RLU creates or changes the source member.&lt;br /&gt;The DDS uses keywords to define your report design. Keywords associated with a&lt;br /&gt;field are called field-level keywords, keywords associated with a record are called&lt;br /&gt;record-level keywords, and keywords associated with an entire printer file are called&lt;br /&gt;file-level keywords.&lt;br /&gt;&lt;br /&gt;You can perform the following tasks with RLU:&lt;br /&gt;¹ Design a report by defining it on the display, saving it as DDS source, and creating&lt;br /&gt;a printer file.&lt;br /&gt;¹ Create a prototype of a report by printing the as400 prtf report design at any time to make&lt;br /&gt;sure that the reports looks the way you want.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-sbmjob-examples.html"&gt;as400 sbmjob&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6128336929770449182?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 PRTF - Report Layout Utility'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6128336929770449182/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-prtf-report-layout-utility.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6128336929770449182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6128336929770449182'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-prtf-report-layout-utility.html' title='AS400 PRTF - Report Layout Utility'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1453029321245885976</id><published>2010-03-27T06:44:00.001Z</published><updated>2010-04-20T07:10:51.268+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sbmjob'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS400 SBMJOB examples</title><content type='html'>Examples for as400 SBMJOB&lt;br /&gt;&lt;br /&gt;Example 1: Submitting an as400 Job&lt;br /&gt;&lt;br /&gt;SBMJOB  JOB(SPECIAL)  JOBD(MYLIB/MYJOBD)&lt;br /&gt;CMD(CALL MYPROG)&lt;br /&gt;This as400 sbmjob command causes the job named SPECIAL to be submitted. Most of the attributes for the job are taken from the job description MYJOBD, or the job that is currently running, except for the command. The CALL command is placed on the submitted job's message queue so that the program MYPROG can be called and run later.&lt;br /&gt;&lt;br /&gt;Example 2: Submitting an as400 Job&lt;br /&gt;&lt;br /&gt;SBMJOB  JOB(PAYROLL)  JOBD(PAYROLL)  INQMSGRPY(*RQD)&lt;br /&gt;This as400 sbmjob command submits a job named PAYROLL to the system. All the information needed for this job (such as the job queue and routing data but not the inquiry message control value) is contained in the job description PAYROLL, or the job that is currently running. The library list in effect for the job issuing this command is used to find the job description. All inquiry messages sent during running of this job requires the receiver of the inquiry message to reply.&lt;br /&gt;&lt;br /&gt;Example 3: Submitting an as400 Job to a Job Queue&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-subsystem.html"&gt;as400 subsystem&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;SBMJOB  JOBD(*USRPRF)  JOB(COPY12)  JOBQ(NIGHTQ)&lt;br /&gt;CMD(CPYF FILEA FILEB)&lt;br /&gt;This as400 sbmjob command submits the job COPY12, which uses the job description in the user profile of the submitting job, to the job queue NIGHTQ. The CMD parameter provides the CL command necessary for the job to run. An as400 sbmjob command such as this might be used to copy the file at night while the system is unattended.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1453029321245885976?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/2010/03/as400-subsystem.html' title='AS400 SBMJOB examples'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1453029321245885976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-sbmjob-examples.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1453029321245885976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1453029321245885976'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-sbmjob-examples.html' title='AS400 SBMJOB examples'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2115368395959610341</id><published>2010-03-27T06:33:00.001Z</published><updated>2010-04-20T07:10:00.972+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='subsystems'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>as400 subsystem</title><content type='html'>An as400 subsystem is described by IBM as follows&lt;br /&gt;&lt;br /&gt;The subsystem is where work is processed on the system. A subsystem is a single, predefined operating environment through which the system coordinates the work flow and resource use. The system can contain several subsystems, all operating independently of each other. Subsystems manage resources.&lt;br /&gt;&lt;br /&gt;All jobs, with the exception of system jobs, run within subsystems. Each subsystem can run unique operations. For instance, one subsystem may be set up to handle only interactive jobs, while another subsystem handles only batch jobs. Subsystems can also be designed to handle many types of work. The system allows you to decide the number of subsystems and what types of work each subsystem will handle.&lt;br /&gt;&lt;br /&gt;The run-time characteristics of a subsystem are defined in an object called a subsystem description. For example, if you want to permanently change the amount of work (number of jobs) coming from a job queue into a subsystem you only need to change the job queue entry in the subsystem description.&lt;br /&gt;&lt;br /&gt;The controlling subsystem&lt;br /&gt;The controlling subsystem is the interactive subsystem that starts automatically when the system starts, and it is the subsystem through which the system operator controls the system via the system console. It is identified in the Controlling subsystem/library (QCTLSBSD) system value.&lt;br /&gt;&lt;br /&gt;IBM® supplies two complete controlling subsystem descriptions: QBASE (the default controlling subsystem) and QCTL. Only one controlling subsystem can be active on the system at any time.&lt;br /&gt;&lt;br /&gt;When the system is in the restricted condition, most of the activity on the system has ended, and only one workstation is active. The system must be in this condition for commands such as Save System (SAVSYS) or Reclaim Storage (RCLSTG) to run. Some programs for diagnosing equipment problems also require the system to be in a restricted condition. To end this condition, you must start the controlling subsystem again.&lt;br /&gt;&lt;br /&gt;Note: There is also a batch restricted state in which one batch job can be active.&lt;br /&gt;When all of the subsystems, including the controlling subsystem are ended, a restricted condition is created. You can end each subsystem individually or you can use the ENDSBS SBS(*ALL) OPTION(*IMMED).&lt;br /&gt;&lt;br /&gt;Important: The system cannot reach the restricted state until there is only one job remaining in the controlling subsystem. Sometimes it may appear as though there is a single job remaining, but the system does not go into the restricted state. In this case you need to verify that there are no suspended system request jobs, suspended group jobs, or disconnected jobs on the remaining active display. Use the Work with Active Jobs (WRKACTJOB) command and press F14=Include to display any suspended or disconnected jobs. If these jobs exist, you need to end them in order for the system to reach the restricted state. The ENDSYS and ENDSBS functions will send a CPI091C information message to the command issuer when this condition is detected.&lt;br /&gt;&lt;br /&gt;Subsystem description&lt;br /&gt;A subsystem description is a system object that contains information defining the characteristics of an operating environment controlled by the system. The system-recognized identifier for the object type is *SBSD. A subsystem description defines how, where, and how much work enters a subsystem, and which resources the subsystem uses to perform the work. An active subsystem takes on the simple name of the subsystem description.&lt;br /&gt;&lt;br /&gt;Like a set of detailed blueprints, each subsystem description is unique, containing the specific characteristics that describe the subsystem. The description includes where work can enter the subsystem, how much work the subsystem can handle, how much main storage (memory) will be used, and how quickly jobs in the subsystem can run.&lt;br /&gt;&lt;br /&gt;You can use a subsystem description supplied with your system (with or without making changes to it), or you can create your own.&lt;br /&gt;&lt;br /&gt;Subsystem description attributes&lt;br /&gt;Subsystem description attributes are common overall system attributes. When you create a subsystem, the first step is to define the subsystem attributes.&lt;br /&gt;&lt;br /&gt;Work entries&lt;br /&gt;Work entries identify the sources where jobs can enter a subsystem. Specific types of work entries are used for different types of jobs. Work entries are part of the subsystem &lt;br /&gt;description.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/ibm-as400-manuals-v5r4.html"&gt;ibm as400 manuals v5r4&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Routing entries&lt;br /&gt;The routing entry identifies the main storage subsystem pool to use, the controlling program to run (typically the system-supplied program QCMD), and additional run-time information (stored in the class object). Routing entries are stored in the as400 subsystem description.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2115368395959610341?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 subsystem'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2115368395959610341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-subsystem.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2115368395959610341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2115368395959610341'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-subsystem.html' title='as400 subsystem'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3402162408046672460</id><published>2010-03-24T19:43:00.001Z</published><updated>2010-08-29T16:18:27.289+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='v5r4 as400'/><category scheme='http://www.blogger.com/atom/ns#' term='v5r4'/><category scheme='http://www.blogger.com/atom/ns#' term='as400 manuals v5r4'/><category scheme='http://www.blogger.com/atom/ns#' term='as400 manuals'/><category scheme='http://www.blogger.com/atom/ns#' term='manuals v5r4'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='manuals'/><title type='text'>ibm as400 manuals v5r4</title><content type='html'>IBM AS400 Manuals  v5r4.&lt;br /&gt;&lt;br /&gt;This is a comprehensive listing of all the as400 manuals that are available as PDFS in the &lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/pdf_table/InteractiveTableManager.htm"&gt;IBM Infocenter&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8260 ATM Product Architecture&lt;br /&gt;Administer iSeries Access for Windows&lt;br /&gt;Advanced Functions and Administration on DB2 Universal Database for iSeries&lt;br /&gt;AFP Utilities for iSeries User's Guide&lt;br /&gt;Alerts Support&lt;br /&gt;All You Need to Know When Migrating from IBM Firewall for AS/400&lt;br /&gt;AnyMail/400 Mail Server Framework Support&lt;br /&gt;APPC, APPN, and HPR&lt;br /&gt;APPC Programming&lt;br /&gt;Application Administration&lt;br /&gt;Application Display Programming&lt;br /&gt;Application programming interfaces&lt;br /&gt;AS/400e Diagnostic Tools for System Administrators: An A to Z Reference for Problem Determination&lt;br /&gt;AS/400 Applications: A Fast and Easy Way to Install, Set Up and Work with VRPG and CODE/400 (ADTS CS)&lt;br /&gt;AS/400 Applications: Moving to the 21st Century&lt;br /&gt;AS/400 APPN Configuration Guide&lt;br /&gt;AS/400 Disk Storage Topics and Tools&lt;br /&gt;AS/400 e-commerce: Internet Connection Servers&lt;br /&gt;AS/400 Electronic-Mail Capabilities&lt;br /&gt;AS/400 HTTP Server Performance and Capacity Planning&lt;br /&gt;AS/400 Internet Security: Developing a Digital Certificate Infrastucture&lt;br /&gt;AS/400 Internet Security: Implementing AS/400 Virtual Private Networks&lt;br /&gt;AS/400 Internet Security: Protecting Your AS/400 from HARM in the Internet&lt;br /&gt;AS/400 Internet Security Scenarios: A Practical Approach&lt;br /&gt;AS/400 Performance Explorer Tips and Techniques&lt;br /&gt;AS/400 Performance Management V3R6/V3R7&lt;br /&gt;AS/400 Programming with VisualAge for RPG&lt;br /&gt;AS/400 Remote Journal Function for High Availability and Data Replication&lt;br /&gt;AS/400 Server Capacity Planning&lt;br /&gt;AS/400 TCP/IP Autoconfiguration: DNS and DHCP Support&lt;br /&gt;AS/400 XML in Action: PDML and PCML&lt;br /&gt;ASCII Work Station Reference&lt;br /&gt;Asynchronous Communications Programming&lt;br /&gt;Asynchronous Transfer Mode (ATM) Technical Overview&lt;br /&gt;ATM Configuration Examples&lt;br /&gt;Availability roadmap&lt;br /&gt;A Comprehensive Guide to Virtual Private Networks, Volume III: Cross-Platform Key and Policy Management&lt;br /&gt;A DB2 Enterprise Query Environment -- Build It with QMF for Windows!&lt;br /&gt;A Fast Path to AS/400 Client/Server Using AS/400 OLE DB Support&lt;br /&gt;Backing up your system&lt;br /&gt;Backup, Recovery, and Media Services (BRMS)&lt;br /&gt;Backup and Recovery&lt;br /&gt;Backup Recovery and Media Services for iSeries&lt;br /&gt;Backup Recovery and Media Services for OS/400: A Practical Approach&lt;br /&gt;Basic printing&lt;br /&gt;Basic system operations&lt;br /&gt;BOOTP&lt;br /&gt;Bringing PHP to Your IBM eServer iSeries Server&lt;br /&gt;BSC Equivalence Link Programming&lt;br /&gt;Building AS/400 Applications for IBM WebSphere Standard Edition 2.0&lt;br /&gt;Building AS/400 Internet-Based Applications with Java&lt;br /&gt;Building iSeries Applications for WebSphere Advanced Edition 3.5&lt;br /&gt;Building Java Applications for the iSeries Server with VisualAge for Java 3.5&lt;br /&gt;C/C++ Legacy Class Libraries Reference&lt;br /&gt;CICS Family: API Structure&lt;br /&gt;CICS Family: Interproduct Communication&lt;br /&gt;CICS for iSeries Administration and Operations Guide&lt;br /&gt;CICS for iSeries Application Programming Guide&lt;br /&gt;CICS for iSeries Intercommunication&lt;br /&gt;CICS for iSeries Problem Determination&lt;br /&gt;Clustering and IASPs for Higher Availability on the IBM eServer iSeries Server&lt;br /&gt;Clusters&lt;br /&gt;Commitment control&lt;br /&gt;Common Information Model&lt;br /&gt;Communications Management&lt;br /&gt;Controlling system shutdown using a power-handling program&lt;br /&gt;Control language (CL)&lt;br /&gt;Control panel&lt;br /&gt;Cryptographic Support/400&lt;br /&gt;Cryptography&lt;br /&gt;Customer service and support&lt;br /&gt;Database administration&lt;br /&gt;Database file management&lt;br /&gt;Database overview&lt;br /&gt;Database programming&lt;br /&gt;Database troubleshooting&lt;br /&gt;DB2 Multisystem&lt;br /&gt;DB2 UDB/WebSphere Performance Tuning Guide&lt;br /&gt;DB2 UDB for AS/400 Object Relational Support&lt;br /&gt;DB2 UDB for AS/400 Visual Explain: Illustrating the Secrets&lt;br /&gt;DB2 Universal Database Extenders for iSeries: Text Extender Administration and Programming&lt;br /&gt;DB2 Universal Database Extenders for iSeries: XML Extender Administration and Programming Version 8&lt;br /&gt;DB2 Universal Database Replication Guide and Reference Version 8&lt;br /&gt;DDS concepts&lt;br /&gt;DDS for display files&lt;br /&gt;DDS for ICF files&lt;br /&gt;DDS for physical and logical files&lt;br /&gt;DDS for printer files&lt;br /&gt;Developing iSeries Navigator plug-ins&lt;br /&gt;DHCP&lt;br /&gt;Digital Certificate Manager&lt;br /&gt;Disk management&lt;br /&gt;Distributed database programming&lt;br /&gt;Distributed data management&lt;br /&gt;Distribute software&lt;br /&gt;Domain Name System&lt;br /&gt;Domino for iSeries Sizing and Performance Tuning&lt;br /&gt;DSNX Support&lt;br /&gt;Electronic Service Agent for iSeries User's Guide&lt;br /&gt;E-mail&lt;br /&gt;Embedded SQL programming&lt;br /&gt;Enterprise Identity Mapping (EIM)&lt;br /&gt;Ethernet&lt;br /&gt;Experience reports&lt;br /&gt;Exploring NFS on AS/400&lt;br /&gt;Extensible Markup Language&lt;br /&gt;Finance Communications Programming&lt;br /&gt;Frame relay&lt;br /&gt;FTP&lt;br /&gt;GDDM Programming Guide&lt;br /&gt;GDDM Reference&lt;br /&gt;Getting to know iSeries Navigator&lt;br /&gt;Get started with iSeries communications&lt;br /&gt;Hierarchical Storage Management&lt;br /&gt;High Availability on the AS/400 System: A System Manager's Guide&lt;br /&gt;i5/OS globalization&lt;br /&gt;i5/OS maximum capacities&lt;br /&gt;i5/OS PASE&lt;br /&gt;i5/OS PASE shells and utilities&lt;br /&gt;IBM 8265 Nways ATM Campus Switch&lt;br /&gt;IBM AS/400 Printing V&lt;br /&gt;IBM Content Manager for iSeries: Application Programming Guide and Reference&lt;br /&gt;IBM Content Manager for iSeries: Getting Started with Client for Windows&lt;br /&gt;IBM Content Manager for iSeries: Messages and Code&lt;br /&gt;IBM Content Manager for iSeries: Planning and Installing&lt;br /&gt;IBM Content Manager for iSeries: System Administration Guide&lt;br /&gt;IBM Content Manager for iSeries: Understanding Advanced Workflow&lt;br /&gt;IBM Content Manager OnDemand for iSeries Administration Guide&lt;br /&gt;IBM Content Manager OnDemand for iSeries Common Server Administration Guide&lt;br /&gt;IBM Content Manager OnDemand for iSeries Common Server Indexing Reference&lt;br /&gt;IBM Content Manager OnDemand for iSeries Common Server Planning and Installation Guide&lt;br /&gt;IBM Content Manager OnDemand for iSeries Common Server Web Enablement Kit Installation Guide&lt;br /&gt;IBM Content Manager OnDemand for iSeries Installation Guide&lt;br /&gt;IBM Content Manager OnDemand User's Guide&lt;br /&gt;IBM Content Manager OnDemand Windows Client Customization Guide&lt;br /&gt;IBM Developer Kit for Java&lt;br /&gt;IBM Directory Server for iSeries (LDAP)&lt;br /&gt;IBM eServer i5, iSeries, and AS/400e System Builder IBM i5/OS Version 5 Release 3 October 2004&lt;br /&gt;IBM eServer i5 and iSeries System Handbook: IBM i5/OS Version 5 Release 3 October 2004&lt;br /&gt;IBM eServer iSeries Independent ASPs: A Guide to Moving Applications to IASPs&lt;br /&gt;IBM eServer iSeries Migration: System Migration and Upgrades at V5R1 and V5R2&lt;br /&gt;IBM eServer iSeries Pocket Handbook: Version 5 Release 2 January 2003&lt;br /&gt;IBM eServer iSeries Printing VI: Delivering the Output of e-business&lt;br /&gt;IBM eServer iSeries Universal Connection for Electronic Support and Service&lt;br /&gt;IBM eServer iSeries Wired Network Security: OS/400 V5R1 DCM and Cryptographic Enhancements&lt;br /&gt;IBM HTTP Server (powered by Apache): An Integrated Solution for IBM eServer iSeries Servers&lt;br /&gt;IBM HTTP Server for i5/OS&lt;br /&gt;IBM Infoprint Fonts: Font Summary&lt;br /&gt;IBM Infoprint Fonts: Introduction to Type Transformer and Utilities for Windows&lt;br /&gt;IBM Infoprint Fonts: Japanese Font Library Technical Reference&lt;br /&gt;IBM Infoprint Fonts: Korean Font Library Technical Reference&lt;br /&gt;IBM Infoprint Fonts: Simplified Chinese Font library Technical Reference&lt;br /&gt;IBM Infoprint Fonts: Traditional Chinese Font Library Technical Reference&lt;br /&gt;IBM iSeries eServer IP Networks: Dynamic!&lt;br /&gt;IBM Open Class Library Transition Guide&lt;br /&gt;IBM Telephone Directory V5.2&lt;br /&gt;IBM Toolbox for Java&lt;br /&gt;IBM WebSphere Development Studio Client for iSeries Product Overview&lt;br /&gt;IBM WebSphere V5.0 Security WebShpere Handbook Series&lt;br /&gt;IBM Welcome Page V1.1&lt;br /&gt;ICF Programming&lt;br /&gt;IDDU Use&lt;br /&gt;ILE Application Development Example&lt;br /&gt;ILE C/C++ Compiler Reference&lt;br /&gt;ILE C/C++ for AS/400 MI Library Reference&lt;br /&gt;ILE C/C++ Programmer's Guide&lt;br /&gt;ILE C/C++ Run-time Library Functions&lt;br /&gt;ILE Concepts&lt;br /&gt;Implementation and Practical Use of LDAP on the eServer iSeries Server&lt;br /&gt;Infoprint Fonts: Creating User Defined Characters&lt;br /&gt;Infoprint Server for iSeries: Introduction and Planning Guide&lt;br /&gt;Infoprint Server for iSeries: User's Guide&lt;br /&gt;Inside APPN and HPR - The Essential Guide to New SNA&lt;br /&gt;Install, upgrade, or delete i5/OS and related software&lt;br /&gt;Installing, upgrading, or deleting i5/OS and related software&lt;br /&gt;Integrated file system&lt;br /&gt;Integrating XML with DB2 XML Extender and DB2 Text Extender&lt;br /&gt;Internetworking over ATM: An Introduction&lt;br /&gt;Internetwork Packet Exchange (IPX) Support&lt;br /&gt;Intrasystem Communications Programming&lt;br /&gt;Introduction to Storage Area Networks&lt;br /&gt;Intrusion detection&lt;br /&gt;IP filtering and network address translation&lt;br /&gt;iSeries Access for Linux&lt;br /&gt;iSeries Access for Web&lt;br /&gt;iSeries Access for Windows: Installation and setup&lt;br /&gt;iSeries Access for Windows: Programming&lt;br /&gt;iSeries Guide to Output&lt;br /&gt;iSeries in Storage Area Networks: A Guide to Implementing FC Disk and Tape with iSeries&lt;br /&gt;iSeries Navigator for Wireless&lt;br /&gt;iSeries Navigator tasks on the Web&lt;br /&gt;iSeries NetServer&lt;br /&gt;iSeries Query Manager&lt;br /&gt;iSeries Safety Inspection&lt;br /&gt;iSeries Security Reference&lt;br /&gt;iSeries Service Functions&lt;br /&gt;iSeries Setting Up Your 0578, 5074, 5078 or 5079 Expansion Unit&lt;br /&gt;iSeries Setting Up Your 0588, 0595, 5088, 5094, 5095, or 5294 Expansion Unit&lt;br /&gt;iSeries Setting Up Your 5065 or 5066 Expansion Unit&lt;br /&gt;iSeries Setting up your 5075 Expansion Unit&lt;br /&gt;iSeries Setting Up Your Twinaxial System&lt;br /&gt;iSeries System Debugger&lt;br /&gt;Java and WebSphere Performance on IBM eServer iSeries Servers&lt;br /&gt;Job Scheduler for OS/400&lt;br /&gt;Journal management&lt;br /&gt;LAN, Frame-Relay and ATM Support&lt;br /&gt;Linux in a logical partition&lt;br /&gt;Linux on an integrated xSeries solution&lt;br /&gt;Linux on the IBM eServer iSeries Server: An Implementation Guide&lt;br /&gt;Local Device Configuration&lt;br /&gt;Logical partitions&lt;br /&gt;Lotus Domino for AS/400 Internet Mail and More&lt;br /&gt;Lotus Fax for Domino for AS/400: Getting the Straight Facts&lt;br /&gt;Lotus Notes and Domino R5.0 Security Infrastructure Revealed&lt;br /&gt;LPAR Configuration and Management Working with eServer iSeries Logical Partitions&lt;br /&gt;Maintaining and managing i5/OS and related software&lt;br /&gt;Management Central&lt;br /&gt;Managing AS/400 V4R4 with Operations Navigator&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 1: Overview and More&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 2: Security&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 3: Configuration and Service&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 4: Packages and Products&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 5: Performance Management&lt;br /&gt;Managing OS/400 with Operations Navigator V5R1 Volume 6: Networking&lt;br /&gt;Microsoft Windows Server 2003 Integration with iSeries&lt;br /&gt;Migrating Applications from WebSphere Application Server Standard Edition to WebSphere Application Server-Express V5&lt;br /&gt;Migration&lt;br /&gt;Migration Options for OS/2 Warp Server for AS/400 and OS/400 Integration for Novell NetWare&lt;br /&gt;MQSeries Backup and Recovery&lt;br /&gt;MQSeries Version 5 Programming Examples&lt;br /&gt;Multithreaded applications&lt;br /&gt;NetWare on iSeries&lt;br /&gt;Networking scenarios&lt;br /&gt;Network authentication service&lt;br /&gt;New Enterprise Integration Functions for Lotus Domino for AS/400&lt;br /&gt;Object signing and signature verification&lt;br /&gt;Operations Console&lt;br /&gt;Optical device programming&lt;br /&gt;OptiConnect&lt;br /&gt;OS/400 Maximum Capacities - V5R2&lt;br /&gt;OS/400 Network File System Support&lt;br /&gt;OS/400 V5R2 Virtual Private Networks: Remote Access to the IBM eServer iSeries Server with Windows 2000 VPN Clients&lt;br /&gt;Performance&lt;br /&gt;Performance and query optimization&lt;br /&gt;Performance Tools for iSeries&lt;br /&gt;Planning a backup and recovery strategy&lt;br /&gt;Plan for and set up system security&lt;br /&gt;Programming with VisualAge RPG&lt;br /&gt;Qshell&lt;br /&gt;Quality of service&lt;br /&gt;Query for iSeries Use&lt;br /&gt;Query Management Facility for Windows&lt;br /&gt;Query Management Programming&lt;br /&gt;Query Manager Use&lt;br /&gt;Rack Lift Tool Operation and Maintenance&lt;br /&gt;Remote Access Services: PPP connections&lt;br /&gt;Remote Work Station Support&lt;br /&gt;REXEC&lt;br /&gt;REXX/400 Programmer's Guide&lt;br /&gt;REXX/400 Reference&lt;br /&gt;Roadmap to Availability on the iSeries 400&lt;br /&gt;RouteD&lt;br /&gt;Secure Sockets Layer (SSL)&lt;br /&gt;Service tools user IDs and passwords&lt;br /&gt;Simple Network Management Protocol (SNMP) Support&lt;br /&gt;Simple Network Time Protocol (SNTP)&lt;br /&gt;Single signon&lt;br /&gt;Slicing the AS/400 with Logical Partitioning: A How to Guide&lt;br /&gt;SNA and TCP/IP Integration&lt;br /&gt;SNA Upline Facility Programming&lt;br /&gt;Socket programming&lt;br /&gt;Speak the Right Language with Your AS/400 System&lt;br /&gt;Spooled files&lt;br /&gt;SQL Call Level Interface (ODBC)&lt;br /&gt;SQL messages and codes&lt;br /&gt;SQL programming&lt;br /&gt;SQL reference&lt;br /&gt;Standard C++ Library Reference&lt;br /&gt;Storage solutions&lt;br /&gt;Stored Procedures, Triggers and User Defined Functions on DB2 Universal Database for iSeries&lt;br /&gt;Striving for Optimal Journal Performance on DB2 Universal Database for iSeries&lt;br /&gt;Subarea to APPN Migration: HPR and DLUR Implementation&lt;br /&gt;System/36-AS/400 Command Cross-Reference&lt;br /&gt;System/36 Environment Programming&lt;br /&gt;System/36 Environment Reference&lt;br /&gt;System/38 Environment Programming&lt;br /&gt;System i and Internet security&lt;br /&gt;System i Performance Capabilities Reference&lt;br /&gt;System Manager Use&lt;br /&gt;System values&lt;br /&gt;Tape files&lt;br /&gt;TCP/IP routing and workload balancing&lt;br /&gt;TCP/IP setup&lt;br /&gt;TCP/IP troubleshooting&lt;br /&gt;TCP/IP Tutorial and Technical Overview&lt;br /&gt;Telnet&lt;br /&gt;TFTP&lt;br /&gt;The AS/400 NetServer Advantage&lt;br /&gt;The IBM Total Storage Tape Libraries Guide for Open Systems&lt;br /&gt;The System Administrator's Companion to AS/400 Availability and Recovery&lt;br /&gt;The XML Files: Using XML for Business-to-Business and Business-to-Consumer Applications&lt;br /&gt;Time management&lt;br /&gt;Token ring&lt;br /&gt;Troubleshooting&lt;br /&gt;Troubleshooting IBM LAN/ATM Campus Networks&lt;br /&gt;Understanding LDAP -- Design and Implementation&lt;br /&gt;Universal Connection&lt;br /&gt;Unleashing AS/400 Applications on the Internet&lt;br /&gt;Upgrades&lt;br /&gt;Using AS/400 Database Monitor and Visual Explain to Identify and Tune SQL Queries&lt;br /&gt;Using LDAP for Directory Integration&lt;br /&gt;Using Sun TI-RPC to develop distributed applications&lt;br /&gt;Using the AS/400 as an IPX Router&lt;br /&gt;V4 TCP/IP for AS/400: More Cool Things Than Ever&lt;br /&gt;Virtual private networking (VPN)&lt;br /&gt;VisualAge RPG Language Reference&lt;br /&gt;VisualAge RPG Parts Reference&lt;br /&gt;WebSphere Application Server for i5/OS V6&lt;br /&gt;WebSphere Application Server for iSeries&lt;br /&gt;WebSphere Application Server - Express for iSeries V5&lt;br /&gt;WebSphere Application Server - Express for iSeries V5.1&lt;br /&gt;WebSphere Application Server - Express V5.0.2 Developer Handbook&lt;br /&gt;WebSphere Application Server - Express V5.0 for iSeries&lt;br /&gt;WebSphere Development Studio: ILE C/C++ Language Reference&lt;br /&gt;WebSphere Development Studio: ILE COBOL Programmer's Guide&lt;br /&gt;WebSphere Development Studio: ILE COBOL Reference&lt;br /&gt;WebSphere Development Studio: ILE RPG Programmer's Guide&lt;br /&gt;WebSphere Development Studio: ILE RPG Reference&lt;br /&gt;WebSphere J2EE Application Development for the IBM eServer iSeries Server&lt;br /&gt;Websphere V3 Performance Tuning Guide&lt;br /&gt;Web Enabling AS/400 Applications with IBM WebSphere Studio&lt;br /&gt;Who Knew You Could Do That with RPG IV? A Sorcerer's Guide to System Access and More&lt;br /&gt;Windows environment on iSeries&lt;br /&gt;Workstation Customization Programming&lt;br /&gt;Work management&lt;br /&gt;X.25 Network Support&lt;br /&gt;XML Toolkit for iSeries&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/creating-as400-query.html"&gt;as400 query&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3402162408046672460?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='ibm as400 manuals v5r4'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3402162408046672460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/ibm-as400-manuals-v5r4.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3402162408046672460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3402162408046672460'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/ibm-as400-manuals-v5r4.html' title='ibm as400 manuals v5r4'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6988770801414308818</id><published>2010-03-21T22:43:00.002Z</published><updated>2010-08-29T16:17:05.574+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='query'/><category scheme='http://www.blogger.com/atom/ns#' term='as400 Query'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Creating an as400 Query</title><content type='html'>Creating an as400 Query&lt;br /&gt;&lt;br /&gt;As400 Query, QUERY/400 as it used to be called or IBM Query for Iseries, which is whats shown these days on the Installed Licensed Programs screen (GO LICPGM Option 10) is probably one of the most widely used tools on the as400. This tool has a very straightforward user interface, so is often used by both technical and non technical staff (with relevant training of course). Its a very easy to use tool for displaying, extracting and reporting on data. Query is a separate chargeable product, but I don’t think I have ever worked at a site that didn’t have it installed on all their systems, so you can be pretty sure almost every AS/400 will have the IBM provided query language QUERY/400.&lt;br /&gt;&lt;br /&gt;As an example, we will write a query over a typical database file that almost every business system has, the CUSTOMER master file. After extracting the data we will create a report.&lt;br /&gt;At the as400 command line type in WRKQRY and hit ENTER:&lt;br /&gt;&lt;br /&gt;----------------------------------------------------------------&lt;br /&gt;Work with Queries                             &lt;br /&gt;&lt;br /&gt;Type choices, press Enter.                                                 &lt;br /&gt;&lt;br /&gt;Option  . . . . . .                  1=Create, 2=Change, 3=Copy, 4=Delete&lt;br /&gt;5=Display, 6=Print definition       &lt;br /&gt;8=Run in batch, 9=Run               &lt;br /&gt;Query . . . . . . .                  Name, F4 for list                   &lt;br /&gt;Library . . . . .   QGPL           Name, *LIBL, F4 for list            &lt;br /&gt;-----------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;We will create a query to view the data in the CUSTOMER master file. Type in 1 for the option to create a query and the press ENTER.&lt;br /&gt;&lt;br /&gt;-----------------------------------------------------------------&lt;br /&gt;Define the Query                     &lt;br /&gt;&lt;br /&gt;Query . . . . . . :                Option  . . . . . :   CREATE&lt;br /&gt;Library . . . . :     QGPL       CCSID . . . . . . :   65535 &lt;br /&gt;&lt;br /&gt;Type options, press Enter.  Press F21 to select all.                 &lt;br /&gt;1=Select                                                          &lt;br /&gt;&lt;br /&gt;Opt    Query Definition Option                                      &lt;br /&gt;1     Specify file selections                                       &lt;br /&gt;Define result fields                                         &lt;br /&gt;Select and sequence fields                                   &lt;br /&gt;Select records                                               &lt;br /&gt;Select sort fields                                           &lt;br /&gt;Select collating sequence                                    &lt;br /&gt;Specify report column formatting                             &lt;br /&gt;Select report summary functions                               &lt;br /&gt;Define report breaks                                         &lt;br /&gt;Select output type and output form                           &lt;br /&gt;Specify processing options                                   &lt;br /&gt;-----------------------------------------------------------------                                                                     &lt;br /&gt;&lt;br /&gt;Next "Specify file selections". This is already selected by default so just hit ENTER and you will see:&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------&lt;br /&gt;Specify File Selections                  &lt;br /&gt;&lt;br /&gt;Type choices, press Enter.  Press F9 to specify an additional       &lt;br /&gt;file selection.                                                    &lt;br /&gt;&lt;br /&gt;File . . . . . . . . .             Name, F4 for list         &lt;br /&gt;Library  . . . . . .     QGPL    Name, *LIBL, F4 for list  &lt;br /&gt;Member . . . . . . . .   *FIRST    Name, *FIRST, F4 for list &lt;br /&gt;Format . . . . . . . .   *FIRST    Name, *FIRST, F4 for list &lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Enter CUSTOMER (or whatever your customer master file is called) as the file you want to query and YOURLIB (replace with your relevant database library) as the Library and press ENTER. Pressing ENTER again will take you back to the Define the Query screen.&lt;br /&gt;&lt;br /&gt;The next option down, the Define result fields option, is described thus: “Select this option either to define one or more new fields to&lt;br /&gt;be used as result fields or to see what result fields are already defined for the query. The new fields will hold the results of arithmetic, character, or date and time operations done on other fields in this query”. In this case we don’t need any result fields so we can ignore this option for now.                           &lt;br /&gt;&lt;br /&gt;We do need to select fields that we want to report on. Type 1 next to "Select and Sequence Fields" and press ENTER&lt;br /&gt;You should now see:&lt;br /&gt;&lt;br /&gt;----------------------------------------------------------------&lt;br /&gt;Type sequence number (0-9999) for the names of up to 500 fields to           &lt;br /&gt;appear in the report, press Enter.                                         &lt;br /&gt;&lt;br /&gt;Seq   Field             Text                                          Len  Dec&lt;br /&gt;CUSTN             Customer Number                                10    0&lt;br /&gt;CUSTNA1           Cust. Name &amp; Address 1                         50    &lt;br /&gt;CUSTNA2           Cust. Name &amp; Address 2                         50    &lt;br /&gt;CUSTNA3           Cust. Name &amp; Address 3                         50    &lt;br /&gt;CUSTNA4           Cust. Name &amp; Address 4                         50    &lt;br /&gt;CUSTTOWN          Customer Town                                  10    &lt;br /&gt;CUSTREPN          Customer Report Name                           20    &lt;br /&gt;LOCCD             Location Code                                   5    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;More...&lt;br /&gt;F3=Exit          F5=Report         F11=Display names only    F12=Cancel      &lt;br /&gt;F13=Layout       F20=Renumber      F21=Select all            F24=More keys   &lt;br /&gt;----------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Since the AS/400 Query knows the file you want to see, as you selected it earlier, it has retrieved the fields in the file and listed them for you to choose from.&lt;br /&gt;Weare going to select the following columns:&lt;br /&gt;cust number&lt;br /&gt;cust name and address 1&lt;br /&gt;cust town&lt;br /&gt;location code&lt;br /&gt;We need to enter a number to select each of the fields that we require, so enter a number next to each field, which will determine the order in which they are displayed. Enter 2 next to CUSTNA1, 1 next to CUSTN, 4 next to CUSTTOWN, and 6 next to LOCCD. Press ENTER twice and then you will be back at the definition screen.&lt;br /&gt;&lt;br /&gt;as400 QUERY allows you to view the results of the query while you are modifying it, which is handy as it allows you correct any errors there and then&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;Display Report                              &lt;br /&gt;Report width . . . . . :     115&lt;br /&gt;Position to line  . . . . .              Shift to column  . . .        &lt;br /&gt;....1....+....2....+....3....+....4....+....5....+....6....+....7&lt;br /&gt;Customer Name and Address 1                   Town       Location&lt;br /&gt;Number                                                   Code&lt;br /&gt;000001 000001 Davis, 2 High St                       London     010            &lt;br /&gt;000002 000012 Charles, 1 High St                     London     010            &lt;br /&gt;000003 000015 Fish, 3 High St                        London     010            &lt;br /&gt;000004 000020 Brompton, 4 High St                    London     010            &lt;br /&gt;&lt;br /&gt;-----------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;This is the first steps to creating a query that shows records on an as400 database file. &lt;br /&gt;&lt;br /&gt;The standard IBM CUA window keys are available on this screen. F20 will move the data window to the right, F19 will move the data window back to the left. F21 will split the screen into two mini windows, one fixed and one moveable, so you can view 2 parts of the data similultaneously. F12 to cancel returns to the main definition screen&lt;br /&gt;&lt;br /&gt;Next is to take option 1 for Column Formatting to modify the column headings to be more descriptive. This allows you to change them to be more meaningful to the out being produced. &lt;br /&gt;&lt;br /&gt;To change the sequencing of the query, type 1 next to "Select Sort Fields". Typing a 1 next to the customer number field will ensure that the data is produced in customer number order. Pressing F5 will allow review of the result of applying the sort to the customer number field.&lt;br /&gt;&lt;br /&gt;The next step is to decide which records to select. Enter a 1 next to select records. In this case we only want to select records with a location code of '030'. The screen will look like:&lt;br /&gt;&lt;br /&gt;----------------------------------------------------------&lt;br /&gt;Select Records             &lt;br /&gt;&lt;br /&gt;Type comparisons, press Enter.  Specify OR to start each new&lt;br /&gt;Tests:  EQ, NE, LE, GE, LT, GT, RANGE, LIST, LIKE, IS, ISN&lt;br /&gt;&lt;br /&gt;AND/OR  Field             Test   Value (Field, Number, 'Char&lt;br /&gt;LOCCD             EQ     '030'                      &lt;br /&gt;&lt;br /&gt;----------------------------------------------------------&lt;br /&gt;Now the extract will only show customers with a location code of '030'.&lt;br /&gt;&lt;br /&gt;Now we need to save the query. Pressing F3 and filling in detals give:&lt;br /&gt;&lt;br /&gt;-------------------------------------------------------------&lt;br /&gt;Exit this Query              &lt;br /&gt;&lt;br /&gt;Type choices, press Enter.                                  &lt;br /&gt;&lt;br /&gt;Save definition  . . .   Y              Y=Yes, N=No       &lt;br /&gt;&lt;br /&gt;Run option . . . . . .   3              1=Run interactively&lt;br /&gt;2=Run in batch    &lt;br /&gt;3=Do not run      &lt;br /&gt;&lt;br /&gt;For a saved definition:                                   &lt;br /&gt;Query  . . . . . . .   TEMPQRY         Name              &lt;br /&gt;Library  . . . . .     QGPL          Name, F4 for list &lt;br /&gt;&lt;br /&gt;Text . . . . . . . .   Display CUSTOMER Master File                &lt;br /&gt;---------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;And to run the query, from an AS400 command line, key in the command to run a query:&lt;br /&gt;&lt;br /&gt;RUNQRY QGPL,TEMPQRY&lt;br /&gt;&lt;br /&gt;This should show the results for the as400 query.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6988770801414308818?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Creating an as400 Query'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6988770801414308818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/creating-as400-query.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6988770801414308818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6988770801414308818'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/creating-as400-query.html' title='Creating an as400 Query'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6778652784634320441</id><published>2010-03-21T06:20:00.000Z</published><updated>2010-03-27T06:22:08.379Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='server'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='client'/><title type='text'>as400 virtual terminals</title><content type='html'>A virtual terminal is a device that does not have hardware associated with it. It forms a connection between your application and AS/400 applications, representing a physical work station (possibly on a remote system). The OS/400 licensed program manages the virtual terminal, which directs work station I/O performed by an AS/400 application to the virtual terminal. The virtual terminal APIs allow another AS/400 application, called a server program, to work with the data associated with the virtual terminal.&lt;br /&gt;&lt;br /&gt;In a distributed systems environment, the requesting program is called a client; the answering program is called a server. The client and server programs may reside on the same AS/400 system or may be distributed between two different systems. The server program generally runs on behalf of (or in conjunction with) the client program. Together, the server program and the client program allow a work station to be supported as if the work station were connected locally, but is in fact a virtual terminal.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6778652784634320441?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 virtual terminals'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6778652784634320441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-virtual-terminals.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6778652784634320441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6778652784634320441'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-virtual-terminals.html' title='as400 virtual terminals'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6435280734163737807</id><published>2010-03-19T20:02:00.000Z</published><updated>2010-03-19T20:02:30.767Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>as400 jobs - Lead DB2 DBA(Z/OS or AIX or LUW or OS/400) - IP Soft - Bangalore, KA</title><content type='html'>DB2 DBA for IPSoft, one of the fastest growing MSPs in the US. • Schema Design Review, Physical Tablespace Layout• DB2 Server Installation, Database Creation, Alteration, and Setup• DB2 Server Database File Management.Nice to have a IBM Certification&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6435280734163737807?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/2009/05/as400-jobs-do-you-have-job-at-moment.html' title='as400 jobs - Lead DB2 DBA(Z/OS or AIX or LUW or OS/400) - IP Soft - Bangalore, KA'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6435280734163737807/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-jobs-lead-db2-dbazos-or-aix-or.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6435280734163737807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6435280734163737807'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-jobs-lead-db2-dbazos-or-aix-or.html' title='as400 jobs - Lead DB2 DBA(Z/OS or AIX or LUW or OS/400) - IP Soft - Bangalore, KA'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8892369870354180856</id><published>2010-03-14T05:25:00.001Z</published><updated>2010-03-14T05:26:46.339Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='QGYOLJBL'/><category scheme='http://www.blogger.com/atom/ns#' term='QMHLJOBL'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Differences between iseries as400 API QMHLJOBL and QGYOLJBL</title><content type='html'>&lt;b&gt;Differences between iseries as400 QMHLJOBL and QGYOLJBL&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The Open List of Job Log Messages (QGYOLJBL) API lists messages from a job log. The returned messages are sorted by their sending date and time unless the message being listed is a reply message to an inquiry, a sender's copy, or a notify type message. When a reply message exists for one of these messages, the reply message is not positioned according to the sending date and time of the reply. The reply message is, instead, listed immediately following the inquiry, the sender's copy, or the notify message that it is associated with&lt;br /&gt;&lt;br /&gt;The List Job Log Messages (QMHLJOBL) API lists messages sent to the job message queue of a job. This API gets the requested message information and returns it in a user space in the format specified in the parameter list. The following discusses how the list is sorted for nonbatch jobs and for batch jobs.&lt;br /&gt;&lt;br /&gt;When the job whose messages are being listed is not a batch job, the returned messages are sorted by their sending date and time unless the message being listed is a reply message to an inquiry, a sender's copy, or a notify message. If it is a reply message, it is listed immediately following the inquiry, sender's copy, or notify message with which it is associated.&lt;br /&gt;&lt;br /&gt;If the last message listed is an inquiry, a sender's copy, or a notify message, the user of the API must call the API again using parameters that would include listing the next later message after the inquiry, sender's copy, or notify message in order to obtain an available reply message.&lt;br /&gt;&lt;br /&gt;When the job whose messages are listed is a batch job, the messages are grouped into two categories:&lt;br /&gt;&lt;br /&gt;Request messages that have been or are being processed, and the other messages that occurred during the processing of those requests.&lt;br /&gt;Request messages that are yet to be processed, and any diagnostic messages associated with these request messages.&lt;br /&gt;The API treats unprocessed request messages as if they had a sending time later than all the request messages and their associated messages that have been or are being processed. The following two examples describe the sorting further.&lt;br /&gt;&lt;br /&gt;For example, if the call to this API specifies to list the messages for a batch job from oldest to newest, the list consists of all requests and their associated messages that have been or are being processed. They are sorted as described above for a job that is not a batch job. They are followed by any request messages and any associated diagnostic messages that have not yet been processed (in the order that they will be processed).&lt;br /&gt;&lt;br /&gt;As an opposite example, if the call to this API specifies to list the messages for a batch job from newest to oldest, the list consists of the request messages that remain to be processed. They are in the opposite order that they are processed. They are followed by the request messages that have been or are being processed and their associated messages. These are sorted backward through time as described above for nonbatch jobs.&lt;br /&gt;&lt;br /&gt;The generated list replaces any existing information in the user space.&lt;br /&gt;&lt;br /&gt;If the user space is not large enough to contain the data to be returned, the user space is increased to the maximum user space size allowed (16MB) or the maximum amount of storage allowed to the user of the API. If this is not large enough to contain the data to be returned, only the number of complete messages that fit in the user space are returned. The information status field in the generic header is set to P (partial but accurate). The user can then resubmit the request from the last message returned to obtain the additional messages. The key of the last message listed for each message queue is provided in the ending message key field in the header portion of the user space.&lt;br /&gt;&lt;br /&gt;The maximum messages requested field and the number of fields to return field for each listed message increase the system resources required to create the list. Users of this API should use caution when specifying parameters that list many messages or request many identified fields to be returned for each listed message&lt;br /&gt;&lt;br /&gt;The differences between the QGYOLJBL API and the List Job Log Messages (QMHLJOBL) API follow:&lt;br /&gt;&lt;br /&gt;The message information for the QGYOLJBL API is returned into a receiver variable instead of a user space.&lt;br /&gt;The request handle parameter was added to the QGYOLJBL API, so that a distinct value is associated with the list. This value ensures that a request for more messages from the list (call QGYGTLE API) is sent to the correct list.&lt;br /&gt;The total records parameter was added to the QGYOLJBL API, so that the caller of the API knows the size of the list from which information can be requested.&lt;br /&gt;The records returned parameter was added to the QGYOLJBL API. Now if the request is for X records and only Y records exist (where Y &lt; X), the requestor is aware that it did not get the number of records requested.&lt;br /&gt;The amount of information returned by the QMHLJOBL API is limited by the size of a user space, approximately 16MB. The list created by the QGYOLJBL API can contain up to 2GB of information&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8892369870354180856?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Differences between iseries as400 API QMHLJOBL and QGYOLJBL'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8892369870354180856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/differences-between-qmhljobl-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8892369870354180856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8892369870354180856'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/differences-between-qmhljobl-and.html' title='Differences between iseries as400 API QMHLJOBL and QGYOLJBL'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2932410974727089510</id><published>2010-03-13T14:58:00.003Z</published><updated>2010-06-26T00:34:37.742+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='messaging'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>as400 commands and APIs you'll use for handling messages</title><content type='html'>The following list of ibm as400 commands and APIs are used for receiving/sending messages. The APIs can be used in any program, whereas the commands are restricted to CL.&lt;br /&gt;&lt;br /&gt;1. SNDPGMMSG. The Send Program Message (SNDPGMMSG) command sends a message to a named message queue or to a call message queue. A call message queue can be the *EXT external message queue or a message queue associated with a call stack entry. Each time a program or procedure is called a new message queue is associated with its call stack entry. The message queue is identified by the name of its associated program or procedure.&lt;br /&gt;&lt;br /&gt;2. QMHSNDPM. The Send Program Message (QMHSNDPM) API sends a &lt;a href="http://as400blog.blogspot.com/"&gt;as400&lt;/a&gt; message to a call message queue or the external message queue. (The external message queue is the part of the job message queue that handles messages between an interactive job and the work station user. It is not associated with a specific call stack entry.) This API allows the current call stack entry to send a message to its caller, a previous caller, or itself.&lt;br /&gt;&lt;br /&gt;3. QMHSNDM. The Send Nonprogram Message (QMHSNDM) API sends a message to a nonprogram message queue so your program can communicate with another job or user&lt;br /&gt;&lt;br /&gt;4. RCVMSG. The Receive Message (RCVMSG) command is used by a program to receive a message previously sent to a message queue. The RCVMSG command receives messages from a job message queue (a message queue associated with a call stack entry or the external message queue (*EXT)), or from a named message queue. The program can receive a message from a message queue associated with its own call stack entry or from a message queue associated with another call stack entry&lt;br /&gt;&lt;br /&gt;5. QMHRCVPM. The Receive Program Message (QMHRCVPM) API receives a message from a call message queue or external message queue and returns information describing the message&lt;br /&gt;&lt;br /&gt;6. QMHRCVM. The Receive Nonprogram Message (QMHRCVM) API receives a message from a nonprogram message queue. To receive a message from a program message queue or from the external message queue, see Receive Program Message API.&lt;br /&gt;&lt;br /&gt;More tips on handling messages on IBM as400 to follow...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-images.html"&gt;as400 images&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2932410974727089510?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 commands and APIs you&apos;ll use for handling messages'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2932410974727089510/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-commands-and-apis-youll-use-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2932410974727089510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2932410974727089510'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-commands-and-apis-youll-use-for.html' title='as400 commands and APIs you&apos;ll use for handling messages'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3251523043179767689</id><published>2010-03-06T15:02:00.001Z</published><updated>2010-06-26T00:31:13.167+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='images'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>As400 Images</title><content type='html'>&lt;img src="http://upload.wikimedia.org/wikipedia/commons/c/c0/AS400.jpg" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://img.zdnet.com/techDirectory/_AS400.GIF" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://t2.gstatic.com/images?q=tbn:HtzGx_OBhn6s5M:http://www.chowen.com/images/AS400.gif" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://static-p3.fotolia.com/jpg/00/05/02/74/400_F_5027451_YgR7UPtdq3ISTTubJipr0qiOtwhfh2l5.jpg" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://www.denso-europe.com/uploads/Movincool/15SFE%20cooling%20AS400%20Rm.jpg" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://www.protocol80.com/CMSFiles/IBM-AS400-iSeries-Servers.jpg" alt="as400 iseries servers"/&gt;&lt;br /&gt;&lt;img src="http://www.as400systemfairs.co.uk/as400_720.jpg" alt="as400 720"/&gt;&lt;br /&gt;&lt;img src="http://sites.google.com/site/as400solutions/_/rsrc/1252376738384/home/iseries-as400.jpg" alt="as400 iseries"/&gt;&lt;br /&gt;&lt;img src="http://img13.imageshack.us/img13/3276/img0147fmi.jpg" alt="as400"/&gt;&lt;br /&gt;&lt;img src="http://www.pacificcable.com/Photos/AS400-Image.jpg" alt="IBM as400"/&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/03/as400-running-matrix-since-1988.html"&gt;as400 running the matrix since 1998&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3251523043179767689?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='As400 Images'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3251523043179767689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-images.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3251523043179767689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3251523043179767689'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-images.html' title='As400 Images'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-763174676129316416</id><published>2010-03-06T14:59:00.002Z</published><updated>2010-03-06T14:59:56.524Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='tshirt'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS/400, Running the Matrix since 1988</title><content type='html'>&lt;img src="http://rlv.zcache.com/as_400_running_the_matrix_since_1988_tshirt-p235927803146795761q6ws_400.jpg" alt="AS/400, Running the Matrix since 1988" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-763174676129316416?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS/400, Running the Matrix since 1988'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/763174676129316416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-running-matrix-since-1988.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/763174676129316416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/763174676129316416'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/as400-running-matrix-since-1988.html' title='AS/400, Running the Matrix since 1988'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8810146241037381699</id><published>2010-02-26T06:03:00.000Z</published><updated>2010-02-26T06:03:23.763Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='db2'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Updating an as400 db2 CLOB with a 64K RPG Variable</title><content type='html'>With most of us working with large amounts of XML data in our interfaces between applications on our as400 systems or with XML data coming from web services running on other systems, we run up against the issue of how to get this data into the database.&lt;br /&gt; &lt;br /&gt;This is a fairly straightforward issue to deal with if we are working with java, but if we are working with good old RPG, how do we our XML data into the as400 database. Especially as the record length on a db2 file is restricted to 32K.&lt;br /&gt; &lt;br /&gt;We do have a facility for storing large amounts of data in the database, in the form of LOBs(Large Objects). The type we are specifically interested in is the CLOB, as we can store character data such as XML in there.&lt;br /&gt; &lt;br /&gt;In theory we should be able to use embedded SQL in our RPG programs to put our XML data into a database clob fields. We can store up to 2Gb of data in our CLOB. Unfortunately we have another issue. Although RPG has a field size maximum of 64K on V5R4 (16M on V6R1 I believe), we have no simple way of getting our 64K of data in out RPG field into our CLOB.&lt;br /&gt; &lt;br /&gt;Looking around online there were plenty of examples of how to read data in from a CLOB, and how to save CLOB data to an IFS file. But there was only one example, from Scott Klement, that showed how you could get data from your as400 RPG field into the CLOB.&lt;br /&gt; &lt;br /&gt;The way this is achieved is to bypass embedded SQL and use the SQL Call Level Interface directly. The X/Open SQL Call Level Interface is a standard for direct access the a systems SQL Engine without a precompile. It allows access to SQL functions directly through procedure calls to a service program provided by DB2 on the as400. Using the SQL Call Level Interface procedure calls allows you to prepare SQL statements, execute SQL statements, fetch rows of data, and even do advanced functions such as accessing the catalogs, and binding program variables to output columns.&lt;br /&gt; &lt;br /&gt;So using the CLI, we can bypass the limitation of embedded SQL, and pass our 64K of data as a host variable using a pointer. An example that shows how to update a CLOB using this method is shown below&lt;br /&gt; &lt;br /&gt;/include *libl/qtxtsrc,MGSQLCLI_H &lt;br /&gt; &lt;br /&gt; ************************************************************************ &lt;br /&gt; * updateClob - Update Clob                      &lt;br /&gt; ************************************************************************ &lt;br /&gt;P updateClob       B                   Export                              &lt;br /&gt;D updateClob       pi            10i 0                                     &lt;br /&gt;d   Id                          10i 0 const                               &lt;br /&gt;d   msg                      65535A   const                               &lt;br /&gt;                                                                          &lt;br /&gt;D id              s             10s 0                                      &lt;br /&gt;D ptr             s               *                                       &lt;br /&gt;D rc              s             10i 0                                     &lt;br /&gt;D msgLen          s             10i 0                                     &lt;br /&gt;D msgSize         s             10i 0                                     &lt;br /&gt;D env             s                   like(SQLHENV) inz(SQL_NULL_HENV)    &lt;br /&gt;d   xmsg         s          65535A                                       &lt;br /&gt; /Free                                                                     &lt;br /&gt; &lt;br /&gt; xmsg = msg;                                                            &lt;br /&gt;                                                                          &lt;br /&gt;  // Create an SQL environment &amp; connection handle                         &lt;br /&gt;  SQLAllocEnv(env);                                       &lt;br /&gt;  SQLSetEnvAttrI(env:SQL_ATTR_OUTPUT_NTS:                 &lt;br /&gt;    SQL_FALSE:%size(SQLINTEGER) );                        &lt;br /&gt;  SQLSetEnvAttrI(env: SQL_ATTR_ENVHNDL_COUNTER            &lt;br /&gt;    :SQL_TRUE: %size(SQLINTEGER) );                       &lt;br /&gt;  SQLAllocConnect(env: conn);                             &lt;br /&gt;                                                          &lt;br /&gt;  // Set Naming Format                                    &lt;br /&gt;  SQLSetConnectAttrI(conn: SQL_ATTR_DBC_SYS_NAMING        &lt;br /&gt;    :SQL_TRUE: %size(SQLINTEGER) );                       &lt;br /&gt;                                                          &lt;br /&gt;  // Set Commitment Level to *CHG                         &lt;br /&gt;  SQLSetConnectAttrI(conn: SQL_ATTR_COMMIT                &lt;br /&gt;    :SQL_COMMIT_CHG: %size(SQLINTEGER) );                 &lt;br /&gt;                                                          &lt;br /&gt;  // Connect to Database                                  &lt;br /&gt;  SQLConnect(conn:'*LOCAL':SQL_NTS:*NULL                   &lt;br /&gt;    :SQL_NTS:*NULL:SQL_NTS );                             &lt;br /&gt;                                                          &lt;br /&gt;  //  Create an SQL statement    &lt;br /&gt;  SQLAllocStmt(conn: stmt );                              &lt;br /&gt;  rc = SQLPrepare(stmt                                     &lt;br /&gt;    : 'UPDATE FILE SET mymsg = ? WHERE myid = ?'   &lt;br /&gt;    : SQL_NTS );                                          &lt;br /&gt;                                                          &lt;br /&gt;  // Assign statement parameters                           &lt;br /&gt;  ptr = %addr(xmsg);                                     &lt;br /&gt;  msgLen = %len(xmsg);                                     &lt;br /&gt;  msgSize = %size(xmsg);                                   &lt;br /&gt;  rc = SQLBindParam(stmt:1:SQL_CLOB:SQL_CLOB:msgSize      &lt;br /&gt;    :0:ptr:msgLen);                                       &lt;br /&gt;                                                            &lt;br /&gt;  rc = SQLBindParam(stmt:2:SQL_NUMERIC:SQL_NUMERIC        &lt;br /&gt;    :%len(id):%decpos(id): %addr(id):0);                  &lt;br /&gt;                                                             &lt;br /&gt;  // Execute Statement                                    &lt;br /&gt;  rc = SQLExecute(stmt);                                  &lt;br /&gt;                                                            &lt;br /&gt;  // Free up SQL Resources                                 &lt;br /&gt;  SQLFreeStmt( stmt : SQL_DROP );                         &lt;br /&gt;                                                          &lt;br /&gt;  cleanup();                                              &lt;br /&gt;  return rc;                                               &lt;br /&gt;                                                          &lt;br /&gt; /End-Free                                                    &lt;br /&gt;p                 E                                           &lt;br /&gt; *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt; * Cleanup(): Deallocate/Disconnect SQL CLI handles           &lt;br /&gt; *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++&lt;br /&gt;P cleanup         B                                           &lt;br /&gt;D cleanup         pi                                          &lt;br /&gt; /free                                                        &lt;br /&gt;     if (stmt &lt;&gt; SQL_NULL_HSTMT);                             &lt;br /&gt;        SQLFreeStmt( stmt : SQL_DROP );                       &lt;br /&gt;        stmt = SQL_NULL_HSTMT;                                &lt;br /&gt;     endif;                                                   &lt;br /&gt;                                                              &lt;br /&gt;     if (conn &lt;&gt; SQL_NULL_HDBC);                              &lt;br /&gt;        SQLDisconnect( conn );                                &lt;br /&gt;        SQLFreeConnect( conn );                               &lt;br /&gt;        conn = SQL_NULL_HDBC;                                 &lt;br /&gt;     endif;                                                   &lt;br /&gt; /End-Free                                                    &lt;br /&gt;p                 E &lt;br /&gt; &lt;br /&gt;Updating an as400 db2 CLOB with a 64K RPG Variable&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8810146241037381699?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Updating an as400 db2 CLOB with a 64K RPG Variable'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8810146241037381699/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/02/updating-as400-db2-clob-with-64k-rpg.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8810146241037381699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8810146241037381699'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/02/updating-as400-db2-clob-with-64k-rpg.html' title='Updating an as400 db2 CLOB with a 64K RPG Variable'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-83388166708757241</id><published>2010-02-11T03:05:00.000Z</published><updated>2010-02-11T03:05:54.338Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcast'/><category scheme='http://www.blogger.com/atom/ns#' term='system i'/><title type='text'>Proactively Manage your Critical System Messages and Resources on the System i</title><content type='html'>Many IT pros struggle to effectively monitor and manage their critical system messages and resources on System i. This webcast provides tips for improving your System i management and explores how you can automate actions to instantly resolve problems across a single system or a multi-system environment. Learn how to monitor your System i from any location via multiple interfaces, including green screen, PC GUI, web browser and handheld device&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://event.on24.com/eventRegistration/EventLobbyServlet?target=lobby.jsp&amp;playerwidth=950&amp;playerheight=680&amp;totalwidth=800&amp;align=left&amp;eventid=190661&amp;sessionid=1&amp;partnerref=bizcard&amp;key=4B3EFC29235408022AFAD0E2114931BB&amp;eventuserid=32990463&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-83388166708757241?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Proactively Manage your Critical System Messages and Resources on the System i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/83388166708757241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/02/proactively-manage-your-critical-system.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/83388166708757241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/83388166708757241'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/02/proactively-manage-your-critical-system.html' title='Proactively Manage your Critical System Messages and Resources on the System i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-7436223534417287641</id><published>2010-02-06T14:04:00.000Z</published><updated>2010-02-06T14:04:34.734Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='zend'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>Create PDF on  iseries spooled files using Zend_PDF and i5 Toolkit for PHP</title><content type='html'>Zend_Pdf is a PDF manipulation framework for PHP available on iseries via the Zend Core. It can help any PHP application dynamically create or modify PDF documents. &lt;br /&gt;&lt;br /&gt;Zend_Pdf offers the following features:&lt;br /&gt;Create or load documents&lt;br /&gt;Manipulate pages within a document&lt;br /&gt;Drawing lines, rectangles, polygons, circles, ellipses and sectors, images and rotations&lt;br /&gt;Use of the 14 built-in fonts or TrueType fonts.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;include the Zend.pdf framework in your PHP code:&lt;br /&gt;require_once 'Zend/Pdf.php'&lt;br /&gt;&lt;br /&gt;Create a PDF class, an instance of the Zend_Pdf object:&lt;br /&gt;&lt;br /&gt;$pdf = new Zend_Pdf();&lt;br /&gt;&lt;br /&gt;A document can be loaded from a file using the instance:&lt;br /&gt;$pdf = Zend_PDF::load($filename);&lt;br /&gt;&lt;br /&gt;Changes to the PDF document can be saved:&lt;br /&gt;$pdf-&amp;gt;save($filename, true);&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #35383d; font-family: Verdana; font-size: 12px; line-height: 19px;"&gt;Zend Core for i5/OS includes the&lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&amp;nbsp;i5 Toolkit for PHP&lt;/strong&gt;. This gives access to i5 function from PHP. &lt;strong style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;i5_spool&lt;/strong&gt;&amp;nbsp;allows administration of spool files.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #35383d; font-family: Verdana; font-size: 12px; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #35383d; font-family: Verdana; font-size: 12px; line-height: 19px;"&gt;Combining this with Zend_PDF will give iseries and i5/os users free coversion of spooled files to PDFs&lt;/span&gt;&lt;br /&gt;&lt;td class="code"&gt;&lt;br /&gt;&lt;/td&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-7436223534417287641?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Create PDF on  iseries spooled files using Zend_PDF and i5 Toolkit for PHP'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/7436223534417287641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/02/create-pdf-on-iseries-spooled-files.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7436223534417287641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7436223534417287641'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/02/create-pdf-on-iseries-spooled-files.html' title='Create PDF on  iseries spooled files using Zend_PDF and i5 Toolkit for PHP'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1772907591641699623</id><published>2010-01-16T19:17:00.000Z</published><updated>2010-03-16T19:18:13.830Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpg'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>UDATE and *DATE in AS400 RPG</title><content type='html'>This document clarifies some potential misunderstandings about the semantics of as400 rpg UDATE (6-digit date) and *DATE (8-digit date). Both reserved words retrieve the job date rather than the system date. This has several ramifications, some of which can be easily overlooked:&lt;br /&gt;o&lt;br /&gt;The date retrieved by UDATE/*DATE can be modified using the as400 CL command CHGJOB to change the job date.&lt;br /&gt;o&lt;br /&gt;For interactive jobs, UDATE/*DATE retrieves the date when the interactive session started. Scenario: A user signs on a machine at a date X and stays logged on past midnight (and possibly over several days). The user then runs an interactive RPG program containing UDATE/*DATE. Either of these reserved words will return date X regardless of what the current date is. To reset what the reserved words return, the user must sign off and back on and, therefore, retain a fresh interactive session.&lt;br /&gt;o&lt;br /&gt;For prestart jobs (PJ) and batch immediate jobs (BCI), the date that is returned for a prestart job (PJ) is the date when the job gets started. It is not the time the connection was made. &lt;br /&gt;&lt;br /&gt;Note: Prestart jobs are recycled according to the prestart job entry settings ( WRKSBS , Option 5, Option 10). The date the daemon job started is returned for BCI jobs rather than the time the BCI job started.&lt;br /&gt;o&lt;br /&gt;For batch jobs, UDATE/*DATE retrieves the date when the job was submitted to run. Scenario: A user submits on date X a batch job consisting of a CL program which calls an IBM RPG/400 program with UDATE/*DATE in it. In addition, suppose the CL program includes aDLYJOB command which delays the call to the RPG program until past midnight. When the RPG program finally runs, the UDATE/*DATE in it returns date X (the start date of the batch job) rather than X+1 (the date when the RPG program actually starts running). The same behavior continues on should the CL program recursively call itself over multiple days; as400 rpg UDATE/*DATE continues returning date X for the duration of the job.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1772907591641699623?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='UDATE and *DATE in AS400 RPG'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1772907591641699623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/03/udate-and-date-in-as400-rpg.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1772907591641699623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1772907591641699623'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/03/udate-and-date-in-as400-rpg.html' title='UDATE and *DATE in AS400 RPG'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6408566043099526240</id><published>2009-09-21T10:27:00.001+01:00</published><updated>2010-02-24T02:06:26.026Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='zip'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>unzipping a file on the iseries</title><content type='html'>as400 iseries Java ajar tool&lt;br /&gt;&lt;br /&gt;The ajar tool is an alternative interface to the jar tool that you use to create and manipulate Java(TM) ARchive (JAR) files. You can use the ajar tool to manipulate both JAR files and ZIP files  on the as400.&lt;br /&gt;&lt;br /&gt;If you need a ZIP interface or UNZIP interface on the iseries, use the ajar tool instead of the jar tool.&lt;br /&gt;&lt;br /&gt;The ajar tool lists the contents of JAR files, extracts from JAR files, creates new JAR files, and supports many of the ZIP formats just as the jar tool does. Additionally, the ajar tool supports adding and deleting files in existing JAR files.&lt;br /&gt;&lt;br /&gt;The ajar tool is available using the iseries Qshell Interpreter. For more details, see ajar - Alternative as400 Java archive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6408566043099526240?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='unzipping a file on the iseries'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6408566043099526240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/unzipping-file-on-iseries.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6408566043099526240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6408566043099526240'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/unzipping-file-on-iseries.html' title='unzipping a file on the iseries'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-9174343173588108699</id><published>2009-09-21T09:57:00.001+01:00</published><updated>2009-09-21T10:19:35.519+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='DST'/><title type='text'>How do you re-enable the user id for STRSST when it has been disabled?</title><content type='html'>Use the CHGDSTPWD command. Simple!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-9174343173588108699?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='How do you re-enable the user id for STRSST when it has been disabled?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/9174343173588108699/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/how-do-you-re-enable-user-id-for-strsst.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/9174343173588108699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/9174343173588108699'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/how-do-you-re-enable-user-id-for-strsst.html' title='How do you re-enable the user id for STRSST when it has been disabled?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8489020199530454811</id><published>2009-09-21T09:56:00.003+01:00</published><updated>2010-02-18T03:15:25.097Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='hotspot'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='browser'/><title type='text'>Connecting from iseries RPG to a web browser</title><content type='html'>Use hotspots in your as400 Client Access session to do this&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;A hotspot is an area in the iseries PC5250 display session window where you can use your left mouse button to execute a command or function. Hotspots are generally used for the following functions:&lt;br /&gt;• To simulate function keys with point-and-click technology&lt;br /&gt;• To execute a macro by clicking on a word on your PC5250 display screen&lt;br /&gt;• To execute a word or string on your PC5250 screen as if you had typed it in as an AS/400 command or option&lt;br /&gt;• To provide a point-and-click facility by simulating the Enter key at the current cursor location&lt;br /&gt;• To interface PC5250 with your Web browser by launching Web sites directly from your as400 OS/400 display session&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;http://www.mcpressonline.com/networking/general/fire-up-your-mouse-with-pc5250s-hotspots-feature.html &lt;br /&gt;&lt;br /&gt;More as400 connectivity tips to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8489020199530454811?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Connecting from iseries RPG to a web browser'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8489020199530454811/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/connecting-from-iseries-rpg-to-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8489020199530454811'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8489020199530454811'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/connecting-from-iseries-rpg-to-web.html' title='Connecting from iseries RPG to a web browser'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2894049596987769674</id><published>2009-09-21T09:35:00.002+01:00</published><updated>2009-09-21T09:38:28.590+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='subfiles'/><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><title type='text'>Difference between SFLINZ and SFLCLR keyword?</title><content type='html'>One effectively sets all the existing subfile records to blanks and zeros, the other removes existing records&lt;br /&gt;&lt;br /&gt;SFLINZ (Subfile Initialize) keyword for display files&lt;br /&gt;&lt;br /&gt;Use this record-level keyword on the subfile control record format to specify that the OS/400 program is to initialize all records in the subfile on an output operation to the subfile control record format (identified by the SFLCTL keyword). The fields in each subfile record are initialized to blanks for character type fields, to nulls for floating-point type fields, to zeros for other numeric type fields, or to the constant value specified on input-only fields if the DFT keyword is specified.&lt;br /&gt;&lt;br /&gt;When the subfile is displayed (on an output operation to the subfile control record), all records in the subfile are displayed with the same value. Any record previously written is overwritten and no longer has its earlier value&lt;br /&gt;&lt;br /&gt;SFLCLR (Subfile Clear) keyword for display files&lt;br /&gt;&lt;br /&gt;Use this record-level keyword on the subfile control record format so that your program can clear the subfile of all records. This keyword differs from the SFLDLT keyword in that the subfile is not deleted. It differs from the SFLINZ keyword in that after being cleared, the subfile contains no data. Clearing the subfile does not affect the display. However, after being cleared, the subfile contains no active records.&lt;br /&gt;&lt;br /&gt;This keyword has no parameters.&lt;br /&gt;&lt;br /&gt;When active records already exist in the subfile and all are to be replaced, your program can send an output operation to the subfile control record format after selecting SFLCLR. This clears the subfile and permits your program to write new records to the subfile (by issuing output operations to the subfile record format while incrementing the relative record number). Issuing an output operation to an already active subfile record causes an error message to be returned to your program.&lt;br /&gt;&lt;br /&gt;If SFLCLR is in effect on an output operation and no records exist in the subfile, SFLCLR is ignored&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2894049596987769674?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Difference between SFLINZ and SFLCLR keyword?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2894049596987769674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/difference-between-sflinz-and-sflclr.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2894049596987769674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2894049596987769674'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/difference-between-sflinz-and-sflclr.html' title='Difference between SFLINZ and SFLCLR keyword?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3392149591943982050</id><published>2009-09-21T09:27:00.002+01:00</published><updated>2009-09-21T09:30:24.982+01:00</updated><title type='text'>IBM iSeries follows in HP 3000 footsteps?</title><content type='html'>Start retraining now guys, I think the answer is very much a yes!&lt;br /&gt;&lt;br /&gt;http://3000newswire.blogs.com/3000_newswire/2009/08/ibm-iseries-follows-in-3000-footsteps.html&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The bottom line is we all need to face the facts of what is happening. IBM i, the OS, is gradually fading away based on IBM not selling it. Since there is no longer an organization to sell IBM i there can be no turn around or return to prominence&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;the demise of the OS400 community -- and so the iSeries computer line and its vendors -- seems inevitable to Cancilla&lt;br /&gt;&lt;br /&gt;"It will simply continue to decline in users and will most definitely be dropped by IBM when the revenue reaches a point where it is no longer feasible to continue supporting it," he wrote in a blog entry last week. Cancilla is getting a strong reaction from iSeries advocates, according to the IT Jungle's Dan Burger. But that probably won't change the sales effort at IBM. This is an aspect of a vendor's disaffection with a platform that was never played out in public for the HP 3000. Right up to the announcement of HP's exit, the vendor and its partners never broached the prospect of HP giving up on the 3000.&lt;br /&gt;&lt;br /&gt;But the AS400 (or iSeries or System i) saw a 40 percent decline in sales from '07 to '08, according to the IT Jungle. IBM has reduced the profile of the most i-like parts of the system when it moved System Licensed Internal Code and a Technology Independent Machine Interface into a new Virtualization Engine&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3392149591943982050?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM iSeries follows in HP 3000 footsteps?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3392149591943982050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/ibm-iseries-follows-in-hp-3000.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3392149591943982050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3392149591943982050'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/ibm-iseries-follows-in-hp-3000.html' title='IBM iSeries follows in HP 3000 footsteps?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1770282249742197168</id><published>2009-09-21T08:51:00.001+01:00</published><updated>2009-09-21T08:53:46.050+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='catalog'/><category scheme='http://www.blogger.com/atom/ns#' term='db2'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>iSeries DB2 catalog tables and views</title><content type='html'>iSeries catalog tables and views&lt;br /&gt;&lt;br /&gt;The iSeries™ catalog includes the following views and tables in the QSYS2 schema:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;DB2 UDB for iSeries name Corresponding ANSI/ISO name Description&lt;br /&gt;SYSCATALOGS CATALOGS Information about relational databases&lt;br /&gt;SYSCHKCST CHECK_CONSTRAINTS Information about check constraints&lt;br /&gt;SYSCOLUMNS COLUMNS Information about column attributes&lt;br /&gt;SYSCST TABLE_CONSTRAINTS Information about all constraints&lt;br /&gt;SYSCSTCOL CONSTRAINT_COLUMN_USAGE Information about the columns referenced in a constraint&lt;br /&gt;SYSCSTDEP CONSTRAINT_TABLE_USAGE Information about constraint dependencies on tables&lt;br /&gt;SYSFUNCS ROUTINES Information about user-defined functions&lt;br /&gt;SYSINDEXES  Information about indexes&lt;br /&gt;SYSJARCONTENTS  Information about jars for Java™ routines.&lt;br /&gt;SYSJAROBJECTS  Information about jars for Java routines.&lt;br /&gt;SYSKEYCST KEY_COLUMN_USAGE Information about unique, primary, and foreign keys&lt;br /&gt;SYSKEYS  Information about index keys&lt;br /&gt;SYSPACKAGE  Information about packages&lt;br /&gt;SYSPARMS PARAMETERS Information about routine parameters&lt;br /&gt;SYSPROCS ROUTINES Information about procedures&lt;br /&gt;SYSREFCST REFERENTIAL_CONSTRAINTS Information about referential constraints&lt;br /&gt;SYSROUTINES ROUTINES Information about functions and procedures&lt;br /&gt;SYSROUTINEDEP ROUTINE_TABLE_USAGE Information about function and procedure dependencies&lt;br /&gt;SYSSEQUENCES  Information about sequences&lt;br /&gt;SYSTABLEDEP  Information about materialized query table dependencies&lt;br /&gt;SYSTABLES TABLES Information about tables and views&lt;br /&gt;SYSTRIGCOL TRIGGER_COLUMN_USAGE Information about columns used in a trigger&lt;br /&gt;SYSTRIGDEP TRIGGER_TABLE_USAGE Information about objects used in a trigger&lt;br /&gt;SYSTRIGGERS TRIGGERS Information about triggers&lt;br /&gt;SYSTRIGUPD TRIGGERED_UPDATE_COLUMNS Information about columns in the WHEN clause of a trigger&lt;br /&gt;SYSTYPES USER_DEFINED_TYPES Information about built-in data types and distinct types&lt;br /&gt;SYSVIEWDEP VIEW_TABLE_USAGE Information about view dependencies on tables&lt;br /&gt;SYSVIEWS VIEWS Information about definition of a view&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1770282249742197168?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='iSeries DB2 catalog tables and views'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1770282249742197168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/iseries-db2-catalog-tables-and-views.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1770282249742197168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1770282249742197168'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/iseries-db2-catalog-tables-and-views.html' title='iSeries DB2 catalog tables and views'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6136083137310205039</id><published>2009-09-21T08:40:00.003+01:00</published><updated>2009-09-21T08:42:55.311+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='mssql'/><category scheme='http://www.blogger.com/atom/ns#' term='jdbc'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Need to access MS SQL databases from the as400. Use Microsofts JDBC driver</title><content type='html'>Overview of the JDBC Driver&lt;br /&gt;&lt;br /&gt;The Microsoft SQL Server JDBC Driver is a Java Database Connectivity (JDBC) 4.0 compliant driver that provides robust data access to Microsoft SQL Server 2000, SQL Server 2005, and SQL Server 2008 databases. The JDBC driver can access many of the new features of SQL Server 2005, including database mirroring; the xml, user-defined, and large-value data types; and it supports the new "snapshot" transaction isolation. In addition, the JDBC driver also supports the use of integrated authentication with SQL Server 2000, SQL Server 2005, and SQL Server 2008. Note that the Microsoft SQL Server JDBC Driver version 2.0 can connect to SQL Server 2008 but does not support the new data types or other features that are new in SQL Server 2008.&lt;br /&gt;&lt;br /&gt;Using the JDBC Driver&lt;br /&gt;This section provides quick start instructions for making a simple connection to a SQL Server database by using the Microsoft SQL Server JDBC Driver. Before you connect to a SQL Server database, SQL Server must first be installed on either your local computer or a server, and the JDBC driver must be installed on your local computer.&lt;br /&gt;&lt;br /&gt;Choosing the Right JAR file&lt;br /&gt;&lt;br /&gt;The Microsoft SQL Server JDBC Driver version 2.0 provides sqljdbc.jar and sqljdbc4.jar class library files to be used depending on your preferred Java Runtime Environment (JRE) settings. For more information about which JAR file to choose, see System Requirements for the JDBC Driver.&lt;br /&gt;&lt;br /&gt;Setting the Classpath&lt;br /&gt;&lt;br /&gt;The JDBC driver is not part of the Java SDK. If you want to use it, you must set the classpath to include the sqljdbc.jar file or the sqljdbc4.jar file. If the classpath is missing an entry for sqljdbc.jar or sqljdbc4.jar, your application will throw the common "Class not found" exception.&lt;br /&gt;&lt;br /&gt;The sqljdbc.jar file and sqljdbc4.jar file are installed in the following location:&lt;br /&gt;&lt;br /&gt;&lt;installation directory&gt;\sqljdbc_&lt;version&gt;\&lt;language&gt;\sqljdbc.jar&lt;br /&gt;&lt;br /&gt;&lt;installation directory&gt;\sqljdbc_&lt;version&gt;\&lt;language&gt;\sqljdbc4.jar&lt;br /&gt;&lt;br /&gt;The following is an example of the CLASSPATH statement that is used for a Windows application:&lt;br /&gt;&lt;br /&gt;CLASSPATH =.;C:\Program Files\Microsoft SQL Server JDBC Driver\sqljdbc_2.0\enu\sqljdbc.jar&lt;br /&gt;&lt;br /&gt;The following is an example of the CLASSPATH statement that is used for a Unix/Linux application:&lt;br /&gt;&lt;br /&gt;CLASSPATH =.:/home/usr1/mssqlserverjdbc/Driver/sqljdbc_2.0/enu/sqljdbc.jar&lt;br /&gt;&lt;br /&gt;You must make sure that the CLASSPATH statement contains only one Microsoft SQL Server JDBC driver, such as either sqljdbc.jar or sqljdbc4.jar.&lt;br /&gt;&lt;br /&gt;Note:&lt;br /&gt;On Windows systems, directory names longer than 8.3 or folder names with spaces may cause problems with classpaths. If you suspect these types of issues, you should temporarily move the sqljdbc.jar file or the sqljdbc4.jar file into a simple directory name such as C:\Temp, change the classpath, and determine whether that addresses the problem.&lt;br /&gt;Applications that are run directly at the command prompt&lt;br /&gt;The classpath is configured in the operating system. Append sqljdbc.jar or sqljdbc4.jar to the classpath of the system. Alternatively, you can specify the classpath on the Java command line that runs the application by using the java -classpath option.&lt;br /&gt;&lt;br /&gt;Applications that run in an IDE&lt;br /&gt;Each IDE vendor provides a different method for setting the classpath in its IDE. Just setting the classpath in the operating system will not work. You must add sqljdbc.jar or sqljdbc4.jar to the IDE classpath.&lt;br /&gt;&lt;br /&gt;Servlets and JSPs&lt;br /&gt;Servlets and JSPs are run in a servlet/JSP engine such as Tomcat. The classpath must be set according to the servlet/JSP engine documentation. Just setting the classpath in the operating system will not work. Some servlet/JSP engines provide setup screens that you can use to set the classpath of the engine. In that situation, you must append the correct JDBC Driver JAR file to the existing engine classpath and restart the engine. In other situations, you can deploy the driver by copying sqljdbc.jar or sqljdbc4.jar to a specific directory, such as lib, during engine installation. The engine driver classpath can also be specified in an engine specific configuration file.&lt;br /&gt;&lt;br /&gt;Enterprise Java Beans&lt;br /&gt;Enterprise Java Beans (EJB) are run in an EJB container. EJB containers are sourced from various vendors. Java applets run in a browser but are downloaded from a Web server. Copy sqljdbc.jar or sqljdbc4.jar to the Web server root and specify the name of the JAR file in the HTML archive tab of the applet, for example, applet ... archive=sqljdbc.jar&gt;.&lt;br /&gt;&lt;br /&gt;Making a Simple Connection to a Database&lt;br /&gt;&lt;br /&gt;Using the sqljdbc.jar class library, applications must first register the driver as follows:&lt;br /&gt;&lt;br /&gt;Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");&lt;br /&gt;&lt;br /&gt;When the driver is loaded, you can establish a connection by using a connection URL and the getConnection method of the DriverManager class:&lt;br /&gt;&lt;br /&gt; String connectionUrl = "jdbc:sqlserver://localhost:1433;" +&lt;br /&gt;   "databaseName=AdventureWorks;user=MyUserName;password=*****;";&lt;br /&gt;Connection con = DriverManager.getConnection(connectionUrl);&lt;br /&gt;In the JDBC API 4.0, the DriverManager.getConnection method is enhanced to load JDBC drivers automatically. Therefore, applications do not need to call the Class.forName method to register or load the driver when using the sqljdbc4.jar class library.&lt;br /&gt;&lt;br /&gt;When the getConnection method of the DriverManager class is called, an appropriate driver is located from the set of registered JDBC drivers. sqljdbc4.jar file includes "META-INF/services/java.sql.Driver" file, which contains the com.microsoft.sqlserver.jdbc.SQLServerDriver as a registered driver. The existing applications, which currently load the drivers by using the Class.forName method, will continue to work without modification.&lt;br /&gt;&lt;br /&gt;Note:&lt;br /&gt;sqljdbc4.jar class library requires a Java Runtime Environment (JRE) of version 6.0 or later.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6136083137310205039?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Need to access MS SQL databases from the as400. Use Microsofts JDBC driver'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6136083137310205039/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/need-to-access-ms-sql-databases-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6136083137310205039'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6136083137310205039'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/need-to-access-ms-sql-databases-from.html' title='Need to access MS SQL databases from the as400. Use Microsofts JDBC driver'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1415596480760282201</id><published>2009-09-21T08:35:00.000+01:00</published><updated>2009-09-21T08:36:30.081+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='qsecofr'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Recover or reset QSECOFR passwords</title><content type='html'>When IBM ships a server, both a QSECOFR OS/400 user profile and a QSECOFR service tools user ID are supplied. These are not the same. They exist in different locations and are used to access different functions. Your QSECOFR service tools user ID can have a different password from your QSECOFR OS/400 user profile. Service tools user IDs have different password policies than OS/400 user profiles.&lt;br /&gt;If you lose or forget the passwords for both the QSECOFR OS/400 user profile and the QSECOFR service tools user ID, you may need to install your operating system again to recover them. Contact your service provider for assistance. If you know either of these passwords, this information tells you how to recover the password you do not know.&lt;br /&gt;Reset the QSECOFR OS/400 user profile password&lt;br /&gt;If you know the QSECOFR service tools user ID, you can use it to reset the QSECOFR OS/400 user profile to its initial value (QSECOFR). This procedure requires you to perform an initial program load (IPL) on your server. The change does not take affect until after the IPL. Complete the following steps to reset the QSECOFR OS/400 user profile:&lt;br /&gt;Start DST.&lt;br /&gt;Enter the QSECOFR service tools user ID and password on the DST Sign-On display.&lt;br /&gt;Select option 5 (Work with DST environment) from the Use DST menu.&lt;br /&gt;Select option 6 (Work with Service Tools Security Data) from the Work with DST Environment menu. You will see the Work with Service Tools Security Data menu:&lt;br /&gt;+——————————————————————————–+&lt;br /&gt;| Work with Service Tools Security Data |&lt;br /&gt;| System: _____________ |&lt;br /&gt;| Select one of the following: |&lt;br /&gt;| 1. Reset operating system default password |&lt;br /&gt;| 2. Change operating system install security |&lt;br /&gt;| 3. Work with service tools security log |&lt;br /&gt;| 4. Restore service tools security data |&lt;br /&gt;| 5. Save service tools security data |&lt;br /&gt;| 6. Password level |&lt;br /&gt;| Selection |&lt;br /&gt;+——————————————————————————–+&lt;br /&gt;Select option 1 (Reset operating system default password). The Confirm Reset of System Default Password display appears.&lt;br /&gt;Press Enter to confirm the reset. A confirmation message appears telling you that the system has set the operating system password override.&lt;br /&gt;Continue pressing F3 (Exit) to return to the Exit DST menu.&lt;br /&gt;Select option 1 (Exit DST). The IPL or Install the System menu appears.&lt;br /&gt;Select option 1 (Perform an IPL). The system continues with a manual IPL. If you need additional information about performing an IPL, see the Starting and stopping the iSeries topic.&lt;br /&gt;When the IPL completes, return the keylock switch or electronic keystick to the Auto position, if applicable.&lt;br /&gt;Sign on to OS/400 as QSECOFR. Use the CHGPWD command to change the QSECOFR password to a new value. Store the new value in a safe place.&lt;br /&gt;Attention: Do not leave the QSECOFR password set to the default. This is a security exposure because this is the value shipped with every iSeries server and is commonly known.&lt;br /&gt;Reset the QSECOFR service tools user ID and password&lt;br /&gt;If you know the password for the QSECOFR OS/400 user profile, you can use it to reset the password for the IBM-supplied service tools user ID that has service tools security privilege (QSECOFR) to the IBM-supplied default value by completing the following steps:&lt;br /&gt;Ensure that the server is in normal operating mode, not DST.&lt;br /&gt;Sign on at a workstation using the QSECOFR OS/400 user profile.&lt;br /&gt;On a command line, type CHGDSTPWD (Change IBM Service Tools Password). You see the Change IBM Service Tools Password (CHGDSTPWD) display:&lt;br /&gt;+——————————————————————————–+&lt;br /&gt;| Change IBM Service Tools Pwd (CHGDSTPWD) |&lt;br /&gt;| |&lt;br /&gt;|Type choices, press Enter. |&lt;br /&gt;| |&lt;br /&gt;|Password . . . . . . . . . . . . *DEFAULT *SAME, *DEFAULT |&lt;br /&gt;| |&lt;br /&gt;+——————————————————————————–+&lt;br /&gt;Type *DEFAULT and press the Enter key. This sets the IBM-supplied service tools user ID that has service tools security privilege and its password to QSECOFR.&lt;br /&gt;Attention: Do not leave the QSECOFR service tools user ID and password set to the default value. This is a security exposure because this is the value shipped with every iSeries server and is commonly known. See the Recommendations for managing service tools user IDs for more information.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1415596480760282201?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Recover or reset QSECOFR passwords'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1415596480760282201/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/recover-or-reset-qsecofr-passwords.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1415596480760282201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1415596480760282201'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/recover-or-reset-qsecofr-passwords.html' title='Recover or reset QSECOFR passwords'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2052789622312370298</id><published>2009-09-20T13:15:00.002+01:00</published><updated>2010-02-24T12:19:56.182Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='HSSF'/><title type='text'>Parsing An Excel Spreadsheet with as400 RPG and Java</title><content type='html'>Scott Klement has an article on how to do this on the as400 here...&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;In the May 15, 2003, issue of Club Tech iSeries Programming Tips, some information was presented on how to use the Jakarta-POI/HSSF Java classes together with an iseries RPG program to create an Excel spreadsheet. In this tip, the same open-source Java classes will be used to do the opposite: to extract data from an existing Excel spreadsheet.&lt;br /&gt;&lt;br /&gt;http://www.easy400.net/hssfcgi/documentation/17840.html&lt;br /&gt;&lt;br /&gt;The downloadable as400 source code for this tip contains an RPG service program and Java .jar file that work together with the HSSF classes to make parsing an Excel document a snap. All you have to do is provide a as400 rpg subprocedure for character cells and a subprocedure for numeric cells, and the service program will call them back for each cell in the workbook&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2052789622312370298?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Parsing An Excel Spreadsheet with as400 RPG and Java'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2052789622312370298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/parsing-excel-spreadsheet-with-as400.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2052789622312370298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2052789622312370298'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/parsing-excel-spreadsheet-with-as400.html' title='Parsing An Excel Spreadsheet with as400 RPG and Java'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3174931953965039661</id><published>2009-09-20T13:08:00.001+01:00</published><updated>2009-09-20T13:11:48.044+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='QNTC'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Unleash the power of i5/os on your windows server using the QNTC File System</title><content type='html'>&lt;blockquote&gt;Once you have QNTC configured, and you have a user profile that can perform operations on your target Windows file shares, you can use QNTC to read and write stream file data to a Windows server in the same way you would normally use the root (/) directory of the IFS, the QDLS file system, or the OpenSys IFS file systems in application programs. Your Windows file systems merely become targets for ASCII and stream file operations, which gives you the ability to use your Windows servers to read and update Windows data in OS/400 programs or to back up Windows data to an OS/400-based tape drive by using the Save Object (SAV) command&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;http://www.itjungle.com/fhg/fhg031704-story04.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3174931953965039661?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Unleash the power of i5/os on your windows server using the QNTC File System'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3174931953965039661/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/unleash-power-of-i5os-on-your-windows.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3174931953965039661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3174931953965039661'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/unleash-power-of-i5os-on-your-windows.html' title='Unleash the power of i5/os on your windows server using the QNTC File System'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5548639941109916725</id><published>2009-09-20T13:00:00.002+01:00</published><updated>2009-09-20T13:03:38.617+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='db2'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Using Reserved Words in as400 sql queries</title><content type='html'>If your trying to run an SQL statement on the as400, but are getting errors because one of your column names is an DB2/400 SQL reserved word, try the following.&lt;br /&gt;&lt;br /&gt;Wrap double quotes around the offending column name, and also make it uppercase. This should resolve the reserved words problem!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5548639941109916725?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using Reserved Words in as400 sql queries'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5548639941109916725/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/using-reserved-words-in-as400-sql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5548639941109916725'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5548639941109916725'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/using-reserved-words-in-as400-sql.html' title='Using Reserved Words in as400 sql queries'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6446503267066489828</id><published>2009-09-18T18:13:00.002+01:00</published><updated>2009-09-18T18:22:23.362+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='exit programs'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Locking down and logging iSeries file access from SQL &amp; FTP commands from windows/unix/java environment</title><content type='html'>Each server application on the as400, first calls an exit program, if one exists, and then continues to access the data. Eg The exit program for ODBC is QIBM_QZDA_INIT.&lt;br /&gt;&lt;br /&gt;The steps to creating an exit program are&lt;br /&gt;&lt;br /&gt;Create you exit program&lt;br /&gt;&lt;br /&gt;Use WRKREGINF to work with exit programs&lt;br /&gt;Use option 1 to add the program to the list of registered exit programs&lt;br /&gt;&lt;br /&gt;This link to an example:&lt;br /&gt;&lt;br /&gt;http://publib.boulder.ibm.com/infoce...imstsmprpg.htm&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Examples: Create exit programs with RPG&lt;br /&gt;&lt;br /&gt;The following example illustrates how to set up a user exit program with RPG*.&lt;br /&gt;&lt;br /&gt;Note: Read the Code example disclaimer for important legal information.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;    **&lt;br /&gt;      ** OS/400 SERVERS - SAMPLE USER EXIT PROGRAM&lt;br /&gt;      **&lt;br /&gt;      ** THE FOLLOWING RPG PROGRAM UNCONDITIONALLY&lt;br /&gt;      ** ACCEPTS ALL REQUESTS. IT CAN BE USED AS A SHELL&lt;br /&gt;      ** FOR SPECIFIC APPLICATIONS. NOTE: REMOVE THE&lt;br /&gt;      ** SUBROUTINES AND CASE STATEMENT ENTRIES FOR THE SERVERS&lt;br /&gt;      ** THAT DO NOT REQUIRE&lt;br /&gt;      ** SPECIFIC EXIT PROGRAM HANDLING FOR BETTER PERFORMANCE.&lt;br /&gt;      **&lt;br /&gt;     E*&lt;br /&gt;     E* NECESSARY ARRAY DEFINITIONS FOR TRANSFER FUNCTION&lt;br /&gt;     E* AND REMOTE SQL&lt;br /&gt;     E*&lt;br /&gt;     E                    TFREQ    4096  1&lt;br /&gt;     E                    RSREQ    4107  1&lt;br /&gt;     I*&lt;br /&gt;     I*&lt;br /&gt;     IPCSDTA      DS&lt;br /&gt;     I                                        1  10 USERID&lt;br /&gt;     I                                       11  20 APPLID&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR VIRTUAL PRINTER&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  30 VPFUNC&lt;br /&gt;     I                                       31  40 VPOBJ&lt;br /&gt;     I                                       41  50 VPLIB&lt;br /&gt;     I                                       71  750VPIFN&lt;br /&gt;     I                                       76  85 VPOUTQ&lt;br /&gt;     I                                       86  95 VPQLIB&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR MESSAGING FUNCTION&lt;br /&gt;     I                                       21  30 MFFUNC&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR TRANSFER FUNCTION&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  30 TFFUNC&lt;br /&gt;     I                                       31  40 TFOBJ&lt;br /&gt;     I                                       41  50 TFLIB&lt;br /&gt;     I                                       51  60 TFMBR&lt;br /&gt;     I                                       61  70 TFFMT&lt;br /&gt;     I                                       71  750TFLEN&lt;br /&gt;     I                                       764171 TFREQ&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR FILE SERVER&lt;br /&gt;     I*&lt;br /&gt;     I* NOTE: FSNAME MAY BE UP TO l6MB.&lt;br /&gt;     I* FSNLEN WILL CONTAIN THE ACTUAL SIZE OF FSNAME.&lt;br /&gt;     I*&lt;br /&gt;     I                                    B  21  240FSFID&lt;br /&gt;     I                                       25  32 FSFMT&lt;br /&gt;     I                                       33  33 FSREAD&lt;br /&gt;     I                                       34  34 FSWRIT&lt;br /&gt;     I                                       35  35 FSRDWR&lt;br /&gt;     I                                       36  36 FSDLT&lt;br /&gt;     I                                    B  37  400FSNLEN&lt;br /&gt;     I                                       41 296 FSNAME&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR DATA QUEUES&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  30 DQFUNC&lt;br /&gt;     I                                       31  40 DQQ&lt;br /&gt;     I                                       41  50 DQLIB&lt;br /&gt;     I                                       70  750DQLEN&lt;br /&gt;     I                                       76  77 DQROP&lt;br /&gt;     I                                       78  820DQKLEN&lt;br /&gt;     I                                       83 338 DQKEY&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR REMOTE SQL&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  30 RSFUNC&lt;br /&gt;     I                                       31  40 RSOBJ&lt;br /&gt;     I                                       41  50 RSLIB&lt;br /&gt;     I                                       51  51 RSCMT&lt;br /&gt;     I                                       52  52 RSMODE&lt;br /&gt;     I                                       53  53 RSCID&lt;br /&gt;     I                                       54  71 RSSTN&lt;br /&gt;     I                                       72  75 RSRSV&lt;br /&gt;     I                                       764182 RSREQ&lt;br /&gt;     I*&lt;br /&gt;     I* SPECIFIC PARAMETERS FOR NETWORK PRINT SERVER&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 NPFT&lt;br /&gt;     I                                    B  29  320NPFID&lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT SPLF0l00&lt;br /&gt;     I                                       33  42 NPJOBN&lt;br /&gt;     I                                       43  52 NPUSRN&lt;br /&gt;     I                                       53  58 NPJOB#&lt;br /&gt;     I                                       59  68 NPFILE&lt;br /&gt;     I                                    B  69  720NPFIL#&lt;br /&gt;     I                                    B  73  760NPLEN&lt;br /&gt;     I                                       77 332 NPDATA&lt;br /&gt;     I*&lt;br /&gt;     I* Data queue server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZHQ_DATA_QUEUE  format ZHQ00100&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 DQOFMT&lt;br /&gt;     I                                    B  29  320DQOFID&lt;br /&gt;     I                                       33  42 DQOOBJ&lt;br /&gt;     I                                       43  52 DQOLIB&lt;br /&gt;     I                                       53  54 DQOROP&lt;br /&gt;     I                                    B  55  580DQOLEN&lt;br /&gt;     I                                       59 314 DQOKEY&lt;br /&gt;     I*&lt;br /&gt;     I* Specific PARAMETERS FOR CENTRAL SERVER&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 CSFMT&lt;br /&gt;     I                                    B  29  320CSFID&lt;br /&gt;     I* Central server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZSC_LM format ZSCL0l00 for license management calls&lt;br /&gt;     I*&lt;br /&gt;     I*&lt;br /&gt;     I                                       33 287 CSLCNM&lt;br /&gt;     I                                      288 295 CSLUSR&lt;br /&gt;     I                                      296 302 CSLPID&lt;br /&gt;     I                                      303 306 CSLFID&lt;br /&gt;     I                                      307 312 CSLRID&lt;br /&gt;     I                                    B 313 3140CSLTYP&lt;br /&gt;     I*&lt;br /&gt;     I* Central server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZSC_LM format ZSCS0l00 for system management calls&lt;br /&gt;     I*&lt;br /&gt;     I*&lt;br /&gt;     I                                       33 287 CSSCNM&lt;br /&gt;     I                                      288 542 CSSCMY&lt;br /&gt;     I                                      543 543 CSSNDE&lt;br /&gt;     I                                      544 798 CSSNNM&lt;br /&gt;     I*&lt;br /&gt; &lt;br /&gt;     I* Central server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZSC_LM format ZSCN0l00 for retrive conversion map calls&lt;br /&gt;     I*&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  30 CSNXFM&lt;br /&gt;     I                                       29  320CSNFNC&lt;br /&gt;     I                                    B  33  360CSNFRM&lt;br /&gt;     I                                    B  37  400CSNTO&lt;br /&gt;     I                                    B  41  420CSNCNT&lt;br /&gt;     I*&lt;br /&gt;     I* SPEClFIC PARAMETERS FOR DATABASE SERVER&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 DBFMT&lt;br /&gt;     I                                    B  29  320DBFID&lt;br /&gt;     I*&lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAD0l00&lt;br /&gt;     I                                       33 160 DBDFIL&lt;br /&gt;     I                                      161 170 DBDLIB&lt;br /&gt;     I                                      171 180 DBDMBR&lt;br /&gt;     I                                      181 190 DBDAUT&lt;br /&gt;     I                                      191 318 DBDBFL&lt;br /&gt;     I                                      319 328 DBDBLB&lt;br /&gt;     I                                      329 338 DBDOFL&lt;br /&gt;     I                                      339 348 DBDOLB&lt;br /&gt;     I                                      349 358 DBDOMB&lt;br /&gt;     I*&lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAD0200&lt;br /&gt;     I                                    B  33  360DBNUM&lt;br /&gt;     I                                       37  46 DBLIB2&lt;br /&gt;     I*&lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAQ0l00&lt;br /&gt;     I                                       33  50 DBSTMT&lt;br /&gt;     I                                       51  68 DBCRSR&lt;br /&gt;     I                                       69  70 DBOPI&lt;br /&gt;     I                                       71  72 DBATTR&lt;br /&gt;     I                                       73  82 DBPKG&lt;br /&gt;     I                                       83  92 DBPLIB&lt;br /&gt;     I                                    B  93  940DBDRDA&lt;br /&gt;     I                                       95  95 DBCMT&lt;br /&gt;     I                                       96 351 DBTEXT&lt;br /&gt;     I* THE FOLLOWING PARAMETERS REPLACE DBTEXT FOR FORMAT ZDAQ0200&lt;br /&gt;     I                                       96 105 DBSQCL&lt;br /&gt;     I                                    B 133 1360DBSQLN&lt;br /&gt;     I                                      137 392 DBSQTX&lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAR0l00&lt;br /&gt;     I                                       33  52 DBLIBR&lt;br /&gt;     I                                       53  88 DBRDBN&lt;br /&gt;     I                                       89 108 DBPKGR&lt;br /&gt;     I                                      109 364 DBFILR&lt;br /&gt;     I                                      365 384 DBMBRR&lt;br /&gt;     I                                      385 404 DBFFT&lt;br /&gt; &lt;br /&gt;     I* THE FOLLOWING PARAMETERS ADDITIONAL FOR FORMAT ZDAR0200&lt;br /&gt;     I                                       33  42 DBRPLB&lt;br /&gt;     I                                       43 170 DBRPTB&lt;br /&gt;     I                                      171 180 DBRFLB&lt;br /&gt;     I                                      181 308 DBRFTB &lt;br /&gt;     I*&lt;br /&gt;     I* Remote command and distributed program call server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZRC_RMT  format CZRC0100&lt;br /&gt;     I*    RCPGM AND RCLIB ARE NOT USED FOR REMOTE COMMAND CALLS&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 RCFMT&lt;br /&gt;     I                                    B  29  320RCFID&lt;br /&gt;     I                                       33  42 RCPGM&lt;br /&gt;     I                                       43  52 RCLIB&lt;br /&gt;     I                                    B  53  560RCNUM&lt;br /&gt;     I                                       57 312 RCDATA&lt;br /&gt;     I*&lt;br /&gt;     I* signon server:&lt;br /&gt;     I*&lt;br /&gt;     I* QIBM_QZSO_SIGNONSRV format ZSOY0l00 for TCP/IP signon server&lt;br /&gt;     I*&lt;br /&gt;     I                                       21  28 SOXFMT&lt;br /&gt;     I                                    B  29  320SOFID&lt;br /&gt;     I*&lt;br /&gt;     I***************************************************************&lt;br /&gt;     I*&lt;br /&gt;     I              '*VPRT     '          C         #VPRT&lt;br /&gt;     I              '*TFRFCL   '          C         #TRFCL&lt;br /&gt;     I              '*FILESRV  '          C         #FILE&lt;br /&gt;     I              '*MSGFCL   '          C         #MSGF&lt;br /&gt;     I              '*DQSRV    '          C         #DQSRV&lt;br /&gt;     I              '*RQSRV    '          C         #RQSRV&lt;br /&gt;     I              '*SQL      '          C         #SQL&lt;br /&gt;     I              '*NDB      '          C         #NDBSV&lt;br /&gt;     I              '*SQLSRV   '          C         #SQLSV&lt;br /&gt;     I              '*RTVOBJINF'          C         #RTVOB&lt;br /&gt;     I              '*DATAQSRV '          C         #DATAQ&lt;br /&gt;     I              'QNPSERVR  '          C         #QNPSV&lt;br /&gt;     I              '*CNTRLSRV '          C         #CNTRL&lt;br /&gt;     I              '*RMTSRV   '          C         #RMTSV&lt;br /&gt;     I              '*SIGNON   '          C         #SIGN&lt;br /&gt;     I*&lt;br /&gt;     C*&lt;br /&gt;     C* EXIT PROGRAM CALL PARAMETERS&lt;br /&gt;     C*&lt;br /&gt;     C           *ENTRY    PLIST&lt;br /&gt;     C                     PARM           RTNCD   1&lt;br /&gt;     C                     PARM           PCSDTA&lt;br /&gt;     C*&lt;br /&gt; &lt;br /&gt;     C* INITIALIZE RETURN VALUE TO ACCEPT REQUEST&lt;br /&gt;     C*&lt;br /&gt;     C                     MOVE '1'       RTNCD&lt;br /&gt;     C*&lt;br /&gt;     C* COMMON PROCESSING&lt;br /&gt;     C*&lt;br /&gt;     C*              COMMON LOGIC GOES HERE&lt;br /&gt;     C*&lt;br /&gt;     C* PROCESS BASED ON SERVER ID&lt;br /&gt;     C*&lt;br /&gt;     C           APPLID    CASEQ#VPRT     VPRT&lt;br /&gt;     C           APPLID    CASEQ#TRFCL    TFR&lt;br /&gt;     C           APPLID    CASEQ#FILE     FILE&lt;br /&gt;     C           APPLID    CASEQ#MSGF     MSG&lt;br /&gt;     C           APPLID    CASEQ#DQSRV    DATAQ&lt;br /&gt;     C           APPLID    CASEQ#RQSRV    RSQL&lt;br /&gt;     C           APPLID    CASEQ#SQL      SQLINT&lt;br /&gt;     C           APPLID    CASEQ#NDBSV    NDB&lt;br /&gt;     C           APPLID    CASEQ#SQLSV    SQLSRV&lt;br /&gt;     C           APPLID    CASEQ#RTVOB    RTVOBJ&lt;br /&gt;     C           APPLID    CASEQ#DATAQ    ODATAQ&lt;br /&gt;     C           APPLID    CASEQ#QNPSV    NETPRT&lt;br /&gt;     C           APPLID    CASEQ#CNTRL    CENTRL&lt;br /&gt;     C           APPLID    CASEQ#RMTSV    RMTCMD&lt;br /&gt;     C           APPLID    CASEQ#SIGN     SIGNON&lt;br /&gt;     C                     END&lt;br /&gt;     C                     SETON                     LR&lt;br /&gt;     C                     RETRN&lt;br /&gt;     C*&lt;br /&gt;     C* SUBROUTINES&lt;br /&gt;     C*&lt;br /&gt;     C*&lt;br /&gt;     C* VIRTUAL PRINT&lt;br /&gt;     C*&lt;br /&gt;     C           VPRT      BEGSR&lt;br /&gt;     C*            SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* TRANSFER FUNCTION&lt;br /&gt;     C*&lt;br /&gt;     C* THE FOLLOWING IS AN EXAMPLE OF SPECIFIC PROCESSING&lt;br /&gt;     C* THAT THE EXIT PROGRAM COULD DO FOR TRANSFER FUNCTION.&lt;br /&gt;     C*&lt;br /&gt; &lt;br /&gt;     C* IN THIS CASE, USERS ARE NOT ALLOWED TO SELECT&lt;br /&gt;     C* DATA FROM ANY FILES THAT ARE IN LIBRARY QIWS.&lt;br /&gt;     C*&lt;br /&gt;     C           TFR       BEGSR&lt;br /&gt;     C           TFFUNC    IFEQ 'SELECT'&lt;br /&gt;     C           TFLIB     ANDEQ'QIWS'&lt;br /&gt;     C                     MOVE '0'       RTNCD&lt;br /&gt;     C                     END&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C*&lt;br /&gt;     C* FILE SERVER&lt;br /&gt;     C*&lt;br /&gt;     C           FILE      BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* MESSAGING FUNCTION&lt;br /&gt;     C*&lt;br /&gt;     C           MSG       BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOFS HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C* DATA QUEUES&lt;br /&gt;     C*&lt;br /&gt;     C           DATAQ     BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* REMOTE SQL&lt;br /&gt;     C*&lt;br /&gt;     C           RSQL      BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* SERVERS&lt;br /&gt;     C*&lt;br /&gt;     C*&lt;br /&gt;     C* DATABASE INIT&lt;br /&gt;     C*&lt;br /&gt;     C           SQLINT    BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* DATABASE NDB (NATIVE DATABASE)&lt;br /&gt;     C*&lt;br /&gt;     C           NDB       BEGSR&lt;br /&gt;     C*             SFECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt; &lt;br /&gt;     C* DATABASE SQL&lt;br /&gt;     C*&lt;br /&gt;     C           SQLSRV    BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* DATABASE RETRIEVE OBJECT INFORMATION&lt;br /&gt;     C*&lt;br /&gt;     C           RTVOBJ    BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* DATA QUEUE SERVER&lt;br /&gt;     C*&lt;br /&gt;     C           ODATAQ    BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* NETWORK PRINT&lt;br /&gt;     C*&lt;br /&gt;     C           NETPRT    BEGSR&lt;br /&gt;     C*             SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* CENTRAL SERVER&lt;br /&gt;     C*&lt;br /&gt;     C*&lt;br /&gt;     C* THE FOLLOWING IS AN EXAMPLE OF SPECIFIC PROCESSING&lt;br /&gt;     C* THAT THE EXIT PROGRAM COULD DO FOR LICENSE MANAGEMENT.&lt;br /&gt;     C*&lt;br /&gt;     C* IN THIS CASE, THE USER "USERALL" WILL NOT BE ALLOWED&lt;br /&gt;     C* TO EXECUTE ANY FUNCTIONS THAT ARE PROVIDED BY THE&lt;br /&gt;     C* CENTRAL SERVER FOR WHICH THIS PROGRAM IS A REGISTERED&lt;br /&gt;     C* EXIT PROGRAM - LICENSE INFORMATION, SYSTEM MANAGEMENT&lt;br /&gt;     C* OR RETRIVE A CONVERSION MAP.&lt;br /&gt;     C*&lt;br /&gt;     C           CENTRL    BEGSR&lt;br /&gt;     C           USERID    IFEQ 'USERALL'&lt;br /&gt;     C                     MOVE '0'       RTNCD&lt;br /&gt;     C                     ENDIF&lt;br /&gt;     C*            SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt; &lt;br /&gt;     C* REMOTE COMMAND AND DISTRIBUTED PROGRAM CALL&lt;br /&gt;     C*&lt;br /&gt;     C* IN THIS CASE, THE USER "USERALL" WILL NOT BE ALLOWED&lt;br /&gt;     C* TO EXECUTE ANY REMOTE COMMANDS OR REMOTE PROGRAM CALLS&lt;br /&gt;     C*&lt;br /&gt;     C           RMTCMD    BEGSR&lt;br /&gt;     C           USERID    IFEQ 'USERALL'&lt;br /&gt;     C                     MOVE '0'       RTNCD&lt;br /&gt;     C                     ENDIF&lt;br /&gt;     C                     ENDSR&lt;br /&gt;     C*&lt;br /&gt;     C* SIGNON SERVER&lt;br /&gt;     C*&lt;br /&gt;     C           SIGNON    BEGSR&lt;br /&gt;     C*                  SPECIFIC LOGIC GOES HERE&lt;br /&gt;     C                     ENDSR&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6446503267066489828?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Locking down and logging iSeries file access from SQL &amp; FTP commands from windows/unix/java environment'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6446503267066489828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/locking-down-and-logging-iseries-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6446503267066489828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6446503267066489828'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/locking-down-and-logging-iseries-file.html' title='Locking down and logging iSeries file access from SQL &amp; FTP commands from windows/unix/java environment'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8525638173860618602</id><published>2009-09-18T17:58:00.002+01:00</published><updated>2009-09-18T18:07:53.980+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='housekeeping'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Automating a process to run every 10 minutes</title><content type='html'>If you need to run a as400 job, say a database query or report on a regular schedule, heres and example of how to do this. Lets say you needed to run a query every 10 mins...&lt;br /&gt;&lt;br /&gt;You could submit a CL program, MYJOB to do this, to batch, with a 10 minute delay and a data area to terminate the job externally...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MYJOB:&lt;br /&gt;Loop: &lt;br /&gt;  Run database query&lt;br /&gt;  Print Report&lt;br /&gt;  FTP data&lt;br /&gt;  etc&lt;br /&gt;&lt;br /&gt;  dlyjob 10 minutes&lt;br /&gt;  check kill dataarea and exit if set&lt;br /&gt;goto loop&lt;br /&gt;&lt;br /&gt;The problem here is that the job will could run for almost 10 minutes after, if the kill data area is set just after its checked. If you operator needs to shut down the system in a hurry you dont want him waiting an extra 10 minutes for a DLYJOB.&lt;br /&gt;&lt;br /&gt;A better way to do the is to replace the read of a data area with a read of a data queue. The CL can then wait the required time for a kill entry to appear on the data queue. If it does you end processing runs immediately, if not you core processing runs again, then the check again. The most you will have to wait is the length of time it takes to run your core processing! So no DLYJOB required, just a QRCVDTAQ (and a QSNDDTAQ to set it of course)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MYJOB:&lt;br /&gt;Loop: &lt;br /&gt;  Run database query&lt;br /&gt;  Print Report&lt;br /&gt;  FTP data&lt;br /&gt;  etc&lt;br /&gt;&lt;br /&gt;  check and wait on kill dataqueue for 10 mins and exit if set&lt;br /&gt;goto loop&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8525638173860618602?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Automating a process to run every 10 minutes'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8525638173860618602/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/automating-process-to-run-every-10.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8525638173860618602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8525638173860618602'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/automating-process-to-run-every-10.html' title='Automating a process to run every 10 minutes'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-279565916977433188</id><published>2009-09-18T17:52:00.003+01:00</published><updated>2009-09-18T17:56:09.828+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpg'/><category scheme='http://www.blogger.com/atom/ns#' term='free format'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Using free-form RPG program to call another RPG program</title><content type='html'>If you get RNF3751 'External procedure on prototype for main procedure is not the same as actual external name' when trying to call an RPG using free format, check you procedure interface. Your PR and your PI need to match!&lt;br /&gt;&lt;br /&gt;eg&lt;br /&gt;&lt;br /&gt;For program myrpg01&lt;br /&gt;&lt;br /&gt;d myrpg01 pr&lt;br /&gt;d parm 1A&lt;br /&gt;&lt;br /&gt;d myrpg01 pi&lt;br /&gt;d parm 1A&lt;br /&gt;&lt;br /&gt;then to call&lt;br /&gt;&lt;br /&gt;either CALLP myrpg01('MYPARM');&lt;br /&gt;&lt;br /&gt;or just&lt;br /&gt;&lt;br /&gt;myrpg01('MYPARM');&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-279565916977433188?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using free-form RPG program to call another RPG program'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/279565916977433188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/using-free-form-rpg-program-to-call.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/279565916977433188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/279565916977433188'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/using-free-form-rpg-program-to-call.html' title='Using free-form RPG program to call another RPG program'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2101687800189443197</id><published>2009-09-18T17:48:00.003+01:00</published><updated>2010-02-19T04:20:54.150Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='housekeeping'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Trying to find out as400 library size</title><content type='html'>To find out your as400 library sizes run&lt;br /&gt;&lt;br /&gt;DSPLIB LIB(*All) OUTPUT(*PRINT)&lt;br /&gt;&lt;br /&gt;in a batch job.&lt;br /&gt;&lt;br /&gt;This will show you the size of all objects in the as400 libraries and the total library size  including the objects at the bottom of each library in the report.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2101687800189443197?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Trying to find out as400 library size'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2101687800189443197/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/trying-to-find-out-library-size.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2101687800189443197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2101687800189443197'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/trying-to-find-out-library-size.html' title='Trying to find out as400 library size'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-923020895890267156</id><published>2009-09-15T22:46:00.002+01:00</published><updated>2009-09-15T22:49:07.592+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='query'/><category scheme='http://www.blogger.com/atom/ns#' term='odbc'/><title type='text'>Creating an AS/400 passthrough query in MS Access</title><content type='html'>Passthrough queries can be efficient for AS/400 ODBC connections because they let you bypass the JET engine and take advantage of the AS/400's query processor.&lt;br /&gt;&lt;br /&gt;To create a passthrough query in Access, open the Queries windows and then double-click the "Create query in design view" icon. Close the New Tables dialog box that automatically appears. Then, on the Query menu, select SQL Specific and then Pass-Through option. Next, set the ODBC connection string by selecting the Properties icon in the toolbar and then clicking on the ellipsis next to the ODBC Connect Str property. You're then prompted to select an existing data source to the AS/400, or you can create a new data source if an AS/400 data source doesn't already exist. After setting the connection properties, type your passthrough query in the SQL Pass-Through Query window and click the Execute icon to run the query&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-923020895890267156?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Creating an AS/400 passthrough query in MS Access'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/923020895890267156/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/creating-iseries-passthrough-query-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/923020895890267156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/923020895890267156'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/creating-iseries-passthrough-query-in.html' title='Creating an AS/400 passthrough query in MS Access'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-45040418706781331</id><published>2009-09-12T10:27:00.004+01:00</published><updated>2010-02-18T03:13:49.040Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='ole'/><category scheme='http://www.blogger.com/atom/ns#' term='odbc'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Typical settings for MS OLE DB Provider for IBM DB2</title><content type='html'>Example settings for configuring MS OLE DB provider for DB2 for as400 iseries&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Affiliate Application&lt;br /&gt;Alternate TP Name&lt;br /&gt;APPC Local LU Alias&lt;br /&gt;APPC Mode Name              QPCSUPP&lt;br /&gt;APPC Remote LU Alias&lt;br /&gt;APPC Security Type          Program&lt;br /&gt;Auth Encrypt    False&lt;br /&gt;Cache Authentication        False&lt;br /&gt;Client Application Name &lt;br /&gt;Connection Pooling          False&lt;br /&gt;Data Source                 myas400.mydomain.com&lt;br /&gt;DateTime As Char            False&lt;br /&gt;DateTime as Date            False&lt;br /&gt;DBMS Platform               DB2/AS400&lt;br /&gt;Default Qualifier&lt;br /&gt;Default Schema              MYDATA (note, this is the library name containing the files to access on as400)&lt;br /&gt;Defer Prepare               False&lt;br /&gt;Derive Parameters           False&lt;br /&gt;Extended Properties  &lt;br /&gt;Host CCSID                  37&lt;br /&gt;Initial Catalog             MY400&lt;br /&gt;Integrated Security&lt;br /&gt;Mode                        ReadWrite&lt;br /&gt;Network Address             myipaddress&lt;br /&gt;Network Port                446&lt;br /&gt;Network Transport Library   TCPIP&lt;br /&gt;New Password&lt;br /&gt;Package Collection          SQLPKG (library to contain the packages created for pulling/pushing data from/to this box)&lt;br /&gt;PC Code Page                1252&lt;br /&gt;Persist Security Info       False&lt;br /&gt;Principle Name&lt;br /&gt;Process Binary as Character false&lt;br /&gt;Rowset Cache Size           0&lt;br /&gt;Units of Work               RUW&lt;br /&gt;Use Early Metadata          False&lt;br /&gt;Locale Identifier           1033&lt;br /&gt;Mode                        3&lt;br /&gt;Protection Level            1&lt;br /&gt;Connection Pooling          false&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;More as400 settings to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-45040418706781331?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Typical settings for MS OLE DB Provider for IBM DB2'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/45040418706781331/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/09/typical-settings-for-ms-ole-db-provider.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/45040418706781331'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/45040418706781331'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/09/typical-settings-for-ms-ole-db-provider.html' title='Typical settings for MS OLE DB Provider for IBM DB2'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4567415379302690134</id><published>2009-08-29T12:32:00.000+01:00</published><updated>2009-08-29T12:42:18.793+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='command'/><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><title type='text'>Display Command Line Window (QUSCMDLN) API</title><content type='html'>The Display Command Line Window (QUSCMDLN) API displays a window containing a command line. A window is an area on the display that is treated as a separate display. Windows have visible boundaries and appear to overlay the display from which they are requested.&lt;br /&gt;&lt;br /&gt;The QUSCMDLN API has no parameters&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4567415379302690134?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Display Command Line Window (QUSCMDLN) API'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4567415379302690134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/08/display-command-line-window-quscmdln.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4567415379302690134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4567415379302690134'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/08/display-command-line-window-quscmdln.html' title='Display Command Line Window (QUSCMDLN) API'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8067492835783116227</id><published>2009-07-24T18:19:00.002+01:00</published><updated>2009-07-24T18:22:17.585+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Reno County is preparing to move from an AS400 computer system to a personal-computer-based system</title><content type='html'>&lt;blockquote&gt;Information Services director Mike Mathews said the county has operated from the same basic computer platform since 1986, and maintenance and upgrades became concerns&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;I hope they mean of their software? If they were worried about maintenance and upgrade of their iseries, someone was obviously giving them some very bad advice.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hutchnews.com/Localregional/flushots2009-07-22T20-54-47"&gt;http://www.hutchnews.com/Localregional/flushots2009-07-22T20-54-47&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8067492835783116227?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Reno County is preparing to move from an AS400 computer system to a personal-computer-based system'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8067492835783116227/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/reno-county-is-preparing-to-move-from.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8067492835783116227'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8067492835783116227'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/reno-county-is-preparing-to-move-from.html' title='Reno County is preparing to move from an AS400 computer system to a personal-computer-based system'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6389021594619029853</id><published>2009-07-24T17:41:00.003+01:00</published><updated>2009-07-24T17:45:43.342+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='rpg'/><category scheme='http://www.blogger.com/atom/ns#' term='groovy'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Calling an RPG program from Groovy</title><content type='html'>DON DENONCOURT shows how to call RPG  from Groovy, via an sql stored procedure call&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;I've been integrating Java applications with AS400/iSeries/Systemi RPG programs for over ten years. I've covered it in my book (Java Application Strategies for the iSeries) as well as in many of my articles. Calling RPG from Java can be complex. There are 4 or so options but I've been fairly emphatic about using JDBC callable statements as it is the simplest approach. To do that you need to create a stored produce "wrapper" for the RPG. But the Java code still can be quite verbose. Not so with Groov&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://denoncourt.blogspot.com/2009/07/calling-rpg-program-from-groovy.html"&gt;http://denoncourt.blogspot.com/2009/07/calling-rpg-program-from-groovy.html&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6389021594619029853?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Calling an RPG program from Groovy'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6389021594619029853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/calling-rpg-program-from-groovy.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6389021594619029853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6389021594619029853'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/calling-rpg-program-from-groovy.html' title='Calling an RPG program from Groovy'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5669770836213303551</id><published>2009-07-24T17:13:00.002+01:00</published><updated>2009-07-24T17:15:50.564+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='system request'/><category scheme='http://www.blogger.com/atom/ns#' term='blunder'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>"We found out the hard way that turning the terminal off doesn’t necessarily end the job"</title><content type='html'>From &lt;a href="http://techblog.livingatrandom.com/2005/08/20/newbie-blunders-part-i/"&gt;http://techblog.livingatrandom.com/2005/08/20/newbie-blunders-part-i/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Since this is my first article, I decided to look back at my career. Starting out in 1996 with a small IT company, I was a fresh graduate and like other graduates, I had no idea what an AS/400 (which is what they called the iSeries back then) was. Naturally, I was pretty excited. When I say this big refrigerator in the middle of the room, I said to myself, “Cool! I get to program using a mainframe!” The other trainees and I were told later that day however, that it was a midrange.&lt;br /&gt;&lt;br /&gt;“Huh? A mid-what?”&lt;br /&gt;&lt;br /&gt;Since our exposure in college was focused on PC’s and DOS (Yeah, yeah, yeah. It was that long ago), we only had a rough idea of what other platforms were. Heck, we thought mainframes belonged to musuems even then. The dumb terminals that were assigned to us were really big…about the size of a microwave oven.&lt;br /&gt;&lt;br /&gt;Eventually, the other trainees and I went through…well…training. We were all coding happily one day when one of us suddenly had an endless loop in a piece of code. No problem! Just press Ctrl-C or Ctrl-Break. But how? There isn’t even a Ctrl key!&lt;br /&gt;&lt;br /&gt;Since it was almost time to go home anyway, we all suggested to our colleague, “Just turn the terminal off and we’ll go home. You can find the bug tomorrow.”&lt;br /&gt;&lt;br /&gt;Imagine our suprise when we were all called down to our boss’ office the following day. We found out the hard way that turning the terminal off doesn’t necessarily end the job. We all were given a long lecture on how to use the System-Request key.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5669770836213303551?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='&quot;We found out the hard way that turning the terminal off doesn’t necessarily end the job&quot;'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5669770836213303551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/we-found-out-hard-way-that-turning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5669770836213303551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5669770836213303551'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/we-found-out-hard-way-that-turning.html' title='&quot;We found out the hard way that turning the terminal off doesn’t necessarily end the job&quot;'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2617140415239641155</id><published>2009-07-24T17:06:00.002+01:00</published><updated>2010-02-25T02:52:50.846Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='ifs'/><category scheme='http://www.blogger.com/atom/ns#' term='file systems'/><category scheme='http://www.blogger.com/atom/ns#' term='nfs'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Exploring NFS on AS/400</title><content type='html'>This redbook explores the Network File System on the AS400 system. &lt;br /&gt;&lt;br /&gt;The OS/400 Network File System (NFS) Support, which was introduced with V3R7 as part of TCP/IP Utility, provides a new system function for the &lt;b&gt;AS400&lt;/b&gt; system that allows you to construct a distributed network system where all users can access the data they need. This redbook will help you use the features of the NFS to share data across sytems. It explains the security considerations to be aware of while using NFS. It then goes on to explore the National Language Support features offered by NFS. Further on, it describes the enhancements in the NFS when compared to the File Server Support/400, which was made available for versions of OS/400 earlier than V3R7. This book also includes the steps involved to migrate from FSS/400 to NFS. The final chapter in this redbook covers a few common problems that you might come across while using the NFS and how to solve them. The intended audiences for this redbook are system administrators building up and maintaining a distributed network using NFS and AS/400 customers or programmers working with the Network File System. It is assumed that the reader has basic working experience with the AS/400 system&lt;br /&gt;&lt;br /&gt;Chapter 1. Integrated File System Overview 1.0&lt;br /&gt;Chapter 2. Network File System Overview 2.0&lt;br /&gt;Chapter 3. Operating and Using NFS 3.0&lt;br /&gt;Chapter 4. NFS Security 4.0&lt;br /&gt;Chapter 5. National Language Support 5.0&lt;br /&gt;Chapter 6. Migrating from FSS/400 to NFS 6.0&lt;br /&gt;Chapter 7. Common Problems Encountered in NFS 7.0&lt;br /&gt;Appendix A. Layout and Rules of the /etc/exports File A.0&lt;br /&gt;Appendix B. Layout and Rules of the /etc/netgroup File B.0&lt;br /&gt;Appendix C. NLS Code Page Example C.0&lt;br /&gt;Appendix D. Installation of the Edit File (EDTF) command D.0&lt;br /&gt;Appendix E. CHOWN() API Description E.0&lt;br /&gt;Appendix F. PC NFS Client Considerations F.0&lt;br /&gt;Appendix G. Displaying Exported Files G.0&lt;br /&gt;Appendix H. Special Notices H.0&lt;br /&gt;Appendix I. Related Publications I.0&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.redbooks.ibm.com/abstracts/sg242158.html"&gt;http://www.redbooks.ibm.com/abstracts/sg242158.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Network File System on the AS400 system&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2617140415239641155?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Exploring NFS on AS/400'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2617140415239641155/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/exploring-nfs-on-as400.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2617140415239641155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2617140415239641155'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/exploring-nfs-on-as400.html' title='Exploring NFS on AS/400'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8367404227146951631</id><published>2009-07-24T17:01:00.002+01:00</published><updated>2009-07-24T17:04:37.350+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='high availability'/><category scheme='http://www.blogger.com/atom/ns#' term='replication'/><category scheme='http://www.blogger.com/atom/ns#' term='HA'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Common High availability issues in an i5/OS High-Availability and Replication Environment</title><content type='html'>Joe Hertvik discusses the issues that can occur once you have you HA and replication environment up and running on your as400.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The second mistake occurs when administrators don't make sure that replicated data stays in sync. Before a failover, perform further auditing on your data groups to make sure that someone hasn't accidentally removed a library from the replication scheme. My shop ran a test last month where we found a critical library was present on both the target and source systems, but its contents hadn't been replicated in six months. Replication had accidentally been turned off; the programs worked but the data was old. So in addition to making sure that you have the same libraries on both systems, make sure that the data is being kept in sync. Otherwise, you may have replicated the file structure perfectly but your data may not be up to date&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/fhg/fhg060309-story03.html"&gt;http://www.itjungle.com/fhg/fhg060309-story03.html&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8367404227146951631?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Common High availability issues in an i5/OS High-Availability and Replication Environment'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8367404227146951631/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/common-high-availability-issues-in-i5os.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8367404227146951631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8367404227146951631'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/common-high-availability-issues-in-i5os.html' title='Common High availability issues in an i5/OS High-Availability and Replication Environment'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-323817028616866577</id><published>2009-07-24T16:54:00.002+01:00</published><updated>2009-07-24T16:56:55.045+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>OnDemand SQL Performance Analysis Simplified on DB2 for i5/OS in V5R4</title><content type='html'>The goal of database performance tuning is to minimise the response time of your queries. It is also to optimise your servers resources by minimising network traffic, disk IO, and CPU time.&lt;br /&gt;This IBM Redbook helps you to understand the basics of identifying and tuning the performance of Structured Query Language (SQL) statements using IBM DB2 for i5/OS . DB2 for i5/OS provides a comprehensive set of tools that help technical analysts tune SQL queries. The SQL Performance Monitors are part of the set of tools that IBM i5/OS provides for assisting in SQL performance analysis since Version 3 Release 6. These monitors help to analyze database performance problems after SQL requests are run. In V5R4 of i5/OS iSeries Navigator provides a series of new tools to do SQL Performance analysis that we cover in this redbook. Among the new tools that we will covering are:&lt;br /&gt;- Capability of visualizing the contents of the SQE Plan Cache&lt;br /&gt;- SQE Plan Cache Snapshots&lt;br /&gt;- The new reporting tool - Dashboard&lt;br /&gt;- OnDemand Index Advisor&lt;br /&gt;- Evaluators such as Index and Materialized Query Tables&lt;br /&gt;This redbook also presents tips and techniques based on the SQL Performance Monitors and other tools, such as Visual Explain and all the tools provided in V5R4. You’ll find this guidance helpful in gaining the most out of both DB2 for i5/OS and query optimizer when using SQL&lt;br /&gt;&lt;br /&gt;Chapter 1. Determining whether you have an SQL performance problem &lt;br /&gt;Chapter 2. DB2 for i5/OS performance basics &lt;br /&gt;Chapter 3. Overview of tools to analyze database performance &lt;br /&gt;Chapter 4. Gathering SQL performance data &lt;br /&gt;Chapter 5. Analyzing SQL performance data using iSeries Navigator &lt;br /&gt;Chapter 6. Custom Database Monitor Analysis &lt;br /&gt;Chapter 7. SQE Plan Cache and SQE Plan Cache Snapshots &lt;br /&gt;Chapter 8. Analyzing database performance data with Visual Explain &lt;br /&gt;Chapter 9. Index Advisor &lt;br /&gt;Chapter 10. SQL Performance Analysis: A Methodology &lt;br /&gt;Chapter 11. Environmental settings that affect SQL Performance &lt;br /&gt;Chapter 12. Tips to pro-actively prevent SQL performance problems &lt;br /&gt;Chapter 13. Using Collection Services data to identify jobs using system resources &lt;br /&gt;Appendix A. Tools to check a performance problem&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.redbooks.ibm.com/abstracts/sg247326.html"&gt;http://www.redbooks.ibm.com/abstracts/sg247326.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-323817028616866577?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='OnDemand SQL Performance Analysis Simplified on DB2 for i5/OS in V5R4'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/323817028616866577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/ondemand-sql-performance-analysis.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/323817028616866577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/323817028616866577'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/ondemand-sql-performance-analysis.html' title='OnDemand SQL Performance Analysis Simplified on DB2 for i5/OS in V5R4'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2071664583569434848</id><published>2009-07-24T16:46:00.003+01:00</published><updated>2010-03-13T20:25:34.831Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='encryption'/><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><category scheme='http://www.blogger.com/atom/ns#' term='backups'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Four Ways To Encrypt i5/OS Backups</title><content type='html'>Joe Hertvik discusses techniques that i5/OS users have for encrypting backups for greater protection and to satisfy auditors and government agencies, explores what technologies are available, as well as the advantages and disadvantages of using each technology&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;You generally have four options to encrypt backup media from your i5/OS systems.&lt;br /&gt;Software encryption through IBM's Backup Recovery and Media Services (BRMS) licensed program (i5/OS V6R1 only)&lt;br /&gt;Software encryption through a third-party product&lt;br /&gt;Hardware encryption through tape drive capabilities&lt;br /&gt;Hardware encryption through an inline encryption backup solution&lt;br /&gt;All of these techniques do the job but they also exact some sort of processing price on your system. In general, software-based encrypt techniques are prone to the following problems:&lt;br /&gt;They force you to rewrite your backup routines to whatever commands or techniques the encryption enabling package uses. This is true whether you're using IBM's BRMS package or whether you're using a third-party package to perform the encryption.&lt;br /&gt;If you're using BRMS to encrypt your data, you have to upgrade to i5/OS V6R1.&lt;br /&gt;Encrypted backups don't take well to media compaction techniques, so backed up files will generally take up more space on your backup media.&lt;br /&gt;Software encrypted backups generally take longer to run, because there is less compaction going on with the backup and because encryption adds another level of processing to your backup routine.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Part I focuses on software techniques&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/fhg/fhg051309-story03.html"&gt;http://www.itjungle.com/fhg/fhg051309-story03.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Part II focuses on hardward techniques&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/fhg/fhg052009-story03.html"&gt;http://www.itjungle.com/fhg/fhg052009-story03.html&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More Ways To Encrypt i5/OS Backups to follow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2071664583569434848?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Four Ways To Encrypt i5/OS Backups'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2071664583569434848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/four-ways-to-encrypt-i5os-backups.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2071664583569434848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2071664583569434848'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/four-ways-to-encrypt-i5os-backups.html' title='Four Ways To Encrypt i5/OS Backups'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6309770468315755886</id><published>2009-07-24T16:39:00.003+01:00</published><updated>2009-07-24T16:42:09.332+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='ssd'/><title type='text'>i:ASP Data Balancer and IBM's iSeries servers</title><content type='html'>IBM is continuing its push into SSDs (solid-state drives), announcing flash drives for server and storage platforms as well as new software for allocating data among different types of drives.&lt;br /&gt;&lt;br /&gt;Enterprise SSDs allow for faster access to data but cost far more, per bit, than spinning HDDs (hard disk drives). IBM is clearly committed to the emerging technology, as are EMC and other enterprise storage vendors. IBM, though, doesn't believe SSDs will make up more than 5 percent of any average company's total storage capacity.&lt;br /&gt;&lt;br /&gt;For the foreseeable future, SSDs will be used as part of tiered storage architectures alongside HDDs, said Charlie Andrews, director of marketing in IBM's Dynamic Infrastructure group. For that reason, the company offers a variety of software to help store "hot" data in SSDs and "cold" data on HDDs. Its latest announcement,  the IBM i:ASP Data Balancer, automatically shifts different bits of data to the most appropriate tier in a storage system. The software uses an algorithm that draws upon information such as how often each bit of data has been used, Andrews said. The i:ASP Data Balancer is designed for IBM's iSeries servers, part of the company's Power &lt;br /&gt;line.&lt;br /&gt;&lt;br /&gt;From &lt;a href="http://www.macvideo.tv/editing/news/index.cfm?newsId=116293&amp;pagType=samechandate"&gt;http://www.macvideo.tv/editing/news/index.cfm?newsId=116293&amp;pagType=samechandate&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6309770468315755886?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='i:ASP Data Balancer and IBM&apos;s iSeries servers'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6309770468315755886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/07/iasp-data-balancer-and-ibms-iseries.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6309770468315755886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6309770468315755886'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/07/iasp-data-balancer-and-ibms-iseries.html' title='i:ASP Data Balancer and IBM&apos;s iSeries servers'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6221515474852598056</id><published>2009-05-27T09:26:00.002+01:00</published><updated>2009-05-27T09:29:57.611+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><category scheme='http://www.blogger.com/atom/ns#' term='modernisation'/><title type='text'>Speedware reselling RPG to-.NET Code Converter</title><content type='html'>&lt;blockquote&gt;Speedware is reselling and servicing Sykora-ML's ML-iMPACT code converter in the North American market. Skykor-ML claims the tool can convert 100 percent of RPG functions into fully maintainable C# or Java. That's quite unusual and special for a code converter, according to Speedware officials, who have decades of experience in the IBM midrange and mainframe migration business.&lt;br /&gt;&lt;br /&gt;The tool converts an RPG application's DDS code to WebForms or ASP objects, while printing and other operating system-specific functions, such as batch job management, are also accounted for. What really impresses Koppe, however, is that Sykora-ML built an automated testing tool directly into ML-iMPACT, "so they can guarantee the result is exactly the same as the source platform. That, again, is very rare to see in a tool."&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/fhs/fhs022409-story01.html"&gt;http://www.itjungle.com/fhs/fhs022409-story01.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6221515474852598056?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Speedware reselling RPG to-.NET Code Converter'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6221515474852598056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/speedware-reselling-rpg-to-net-code.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6221515474852598056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6221515474852598056'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/speedware-reselling-rpg-to-net-code.html' title='Speedware reselling RPG to-.NET Code Converter'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4475633180396254058</id><published>2009-05-27T09:18:00.001+01:00</published><updated>2009-05-27T09:19:59.425+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><title type='text'>Halcyon Software growing its presence in the U.S</title><content type='html'>&lt;blockquote&gt;U.K.-based Halcyon Software, a developer of systems management software for i OS and other platforms, is growing its presence in the U.S. with the goal of attracting new customers. But instead of concentrating on individual AS/400 shops, Halcyon will primarily target outsourcing firms that run large data centers, which in turn will use Halcyon's software to manage the individual clients' systems. It's a practice that has already provided successful for the software company in the U.S&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/fhs/fhs052609-story01.html"&gt;http://www.itjungle.com/fhs/fhs052609-story01.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4475633180396254058?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Halcyon Software growing its presence in the U.S'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4475633180396254058/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/halcyon-software-growing-its-presence.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4475633180396254058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4475633180396254058'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/halcyon-software-growing-its-presence.html' title='Halcyon Software growing its presence in the U.S'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1167057944023181573</id><published>2009-05-25T19:41:00.001+01:00</published><updated>2009-05-25T19:43:51.686+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='ssd'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><title type='text'>IBM ships SSDs for Power Systems - Unix, Linux, and i5/os</title><content type='html'>&lt;blockquote&gt;IBM today begins selling its first solid state disks for its Power Systems boxes, the machines it uses to attack the Unix, Linux, and OS/400 installed bases.&lt;br /&gt;&lt;br /&gt;The IBM SSD, which comes in a 2.5-inch form factor, has about 220 MB/sec of sustained throughput on reads and about 122 MB/sec of sustained throughput on writes and can perform about 28,000 I/O operations per second (IOPS) on random transactional processing. The SSD has a 3 Gb/sec SAS interface and has an average access time of from 20 to 120 microseconds, the difference depending on where data is located on the SSD. According to IBM's specs, the SSD has about 87 times the I/O operations per second of a 15K RPM SAS drive and yet consumes about one-fifth of the power&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt; Timothy Prickett Morgan in The Register&lt;br /&gt;&lt;br /&gt;http://www.theregister.co.uk/2009/05/22/ibm_power_ssds/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1167057944023181573?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM ships SSDs for Power Systems - Unix, Linux, and i5/os'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1167057944023181573/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-ships-ssds-for-power-systems-unix.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1167057944023181573'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1167057944023181573'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-ships-ssds-for-power-systems-unix.html' title='IBM ships SSDs for Power Systems - Unix, Linux, and i5/os'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6380908846478448782</id><published>2009-05-22T13:34:00.005+01:00</published><updated>2010-02-24T01:49:37.402Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='jtopen'/><title type='text'>AS400 JTOpen 6.5.1 Available</title><content type='html'>Fixes and enhancements in as400 &lt;b&gt;JTOpen&lt;/b&gt; 6.5.1 (released 2009-05-20)&lt;br /&gt;&lt;br /&gt;- Data area:  Fixed breakage in JTOpen 6.5: NoClassDefFoundError on Sun JVM's.&lt;br /&gt;- Print:      Fixed breakage in JTOpen 6.5: NoClassDefFoundError on Sun JVM's.&lt;br /&gt;- User space: Fixed breakage in JTOpen 6.5: NoClassDefFoundError on Sun JVM's.&lt;br /&gt;&lt;br /&gt;What is IBMs Toolbox for Java&lt;br /&gt;&lt;br /&gt;The IBM Toolbox for Java is a set of Java classes that allow you to&lt;br /&gt;access IBM i, i5/OS, or OS/400 data through a Java program. With these classes,&lt;br /&gt;you can write client/server applications, applets, and servlets that work&lt;br /&gt;with data on your IBM i, i5/OS, or OS/400 system. You can also run Java&lt;br /&gt;applications that use the IBM Toolbox for Java on the IBM i, i5/OS, or&lt;br /&gt;OS/400 Java Virtual Machine.&lt;br /&gt;&lt;br /&gt;The Toolbox is available as an installable licensed program for the AS/400&lt;br /&gt;as of OS/400 V4R2 and the iSeries as of OS/400 V5R1. Here is a breakdown of&lt;br /&gt;Toolbox releases versus operating system versions:&lt;br /&gt;&lt;br /&gt;Toolbox                         Installs on     Connects to&lt;br /&gt;release         LPP release     OS/400 version  OS/400 version&lt;br /&gt;-------         --------------  --------------  --------------&lt;br /&gt;V4R2            5763JC1 V3R2M0  V3R2 and up     V3R2 and up&lt;br /&gt;V4R3            5763JC1 V3R2M1  V3R2 and up     V3R2 and up&lt;br /&gt;V4R4            5769JC1 V4R2M0  V4R2 and up     V4R2 and up&lt;br /&gt;V4R5            5769JC1 V4R5M0  V4R3 and up     V4R2 and up&lt;br /&gt;V5R1            5722JC1 V5R1M0  V4R4 and up     V4R3 and up&lt;br /&gt;V5R2            5722JC1 V5R2M0  V4R5 and up     V4R5 and up&lt;br /&gt;V5R3(*)         5722JC1 V5R3M0  V5R1 and up     V5R1 and up&lt;br /&gt;V5R4(**)        5722JC1 V5R4M0  V5R2 and up     V5R2 and up&lt;br /&gt;JTOpen 1.x      Not applicable  Not applicable  V4R3 and up&lt;br /&gt;JTOpen 2.x      Not applicable  Not applicable  V4R4 and up&lt;br /&gt;JTOpen 3.x      Not applicable  Not applicable  V4R5 and up&lt;br /&gt;JTOpen 4.0-4.2  Not applicable  Not applicable  V4R5 and up&lt;br /&gt;JTOpen 4.3-4.7  5722JC1 V5R3M0  V5R1 and up     V5R1 and up&lt;br /&gt;JTOpen 4.8+     5722JC1 V5R4M0  V5R2 and up     V5R2 and up&lt;br /&gt;JTOpen 6.1+     5761JC1 V6R1M0  V5R3 and up     V5R3 and up&lt;br /&gt;&lt;br /&gt;(*)  Note: Toolbox release V5R3 is equivalent to JTOpen 4.3.&lt;br /&gt;(**) Note: Toolbox release V5R4 is equivalent to JTOpen 4.8.&lt;br /&gt;&lt;br /&gt;Newer versions of the Toolbox are backwards-compatible with earlier&lt;br /&gt;versions. Upgrading to a newer version is usually recommended, with the one&lt;br /&gt;main exception being that the Toolbox is only supported for connection&lt;br /&gt;to servers running either of the two prior releases of i5/OS or OS/400.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Why Open Source?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;We have chosen to make the Toolbox code open source for the following reasons:&lt;br /&gt;&lt;br /&gt;1. To obtain new functions and features from the Toolbox user community.&lt;br /&gt;&lt;br /&gt;2. To respond with customer and business partners requirements as rapidly&lt;br /&gt;as possible.&lt;br /&gt;&lt;br /&gt;3. To improve the ability for our customers to build and debug their own&lt;br /&gt;applications when using the Toolbox functions.&lt;br /&gt;&lt;br /&gt;4. To continue the drive to keep the IBM i platform a leader with Java technology&lt;br /&gt;for application development.&lt;br /&gt;&lt;br /&gt;Differences between JTOpen and the Toolbox LPP&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. The initial release of the source code for JTOpen used the V4R5&lt;br /&gt;Toolbox codebase. That is, the Java code in the open source repository&lt;br /&gt;is the same code that was used to build the V4R5 Toolbox LPP. JTOpen 2.0x&lt;br /&gt;uses the V5R1 Toolbox as its codebase. The latest release of JTOpen&lt;br /&gt;(JTOpen 6.x) uses the V6R1 Toolbox as its codebase.&lt;br /&gt;&lt;br /&gt;2. When bugs are reported, fixes will be committed to JTOpen as soon as&lt;br /&gt;they are realized. When applicable, these same fixes will be committed&lt;br /&gt;to the Toolbox LPP and made available in a future PTF or service pack.&lt;br /&gt;&lt;br /&gt;3. Any new functionality that is committed to JTOpen will be subsequently&lt;br /&gt;added, when applicable, into the Toolbox LPP and made available in a&lt;br /&gt;future PTF or service pack.&lt;br /&gt;&lt;br /&gt;Note: All changes to JTOpen are made under the control and at the&lt;br /&gt;discretion of the JTOpen Core Team. All changes to the Toolbox LPP&lt;br /&gt;are made under the control and at the discretion of IBM.&lt;br /&gt;&lt;br /&gt;4. In general, the Toolbox LPP is supported directly by IBM. JTOpen&lt;br /&gt;is supported by the JTOpen user community, in which IBM participates&lt;br /&gt;and contributes, specifically through developer email, the JTOpen&lt;br /&gt;mailing list, and the JTOpen web forum&lt;br /&gt;&lt;br /&gt;5. Pursuant to the IBM Public License, programmers are free to alter the&lt;br /&gt;JTOpen source code and to distribute it with their own applications.&lt;br /&gt;&lt;br /&gt;Download and installation of JTOpen&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Requirements&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Briefly, the requirements for using the JTOpen code are as follows:&lt;br /&gt;&lt;br /&gt;1. A Java Virtual Machine (JVM) with a 1.2.x or higher JDK/JRE. The JTOpen&lt;br /&gt;team highly recommends moving to the latest supported release of the JDK/JRE, as&lt;br /&gt;maintaining backwards-compatible code with older releases becomes&lt;br /&gt;increasingly difficult to support over time.&lt;br /&gt;&lt;br /&gt;2. Almost all JTOpen functions require a TCP/IP connection to an IBM i server.&lt;br /&gt;&lt;br /&gt;a. The server must be IBM i, i5/OS, or OS/400 V4R3 or higher.&lt;br /&gt;&lt;br /&gt;b. The server must have the Option 12 Host Servers installed and&lt;br /&gt;running. JTOpen uses the host servers as TCP/IP endpoints to&lt;br /&gt;communicate with the server from a client.&lt;br /&gt;&lt;br /&gt;c. If the Java application using JTOpen is being run directly on a server&lt;br /&gt;running IBM i, i5/OS, or OS/400, then certain JTOpen functions might use&lt;br /&gt;native API and/or local socket calls to improve performance.&lt;br /&gt;This will only occur under certain conditions, and only if the file&lt;br /&gt;jt400Native.jar is included in the application's CLASSPATH.&lt;br /&gt;&lt;br /&gt;3. For GUI programming, either Java 2 or Swing 1.1 or higher is required.&lt;br /&gt;&lt;br /&gt;Files&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;JTOpen is comprised of the following files:&lt;br /&gt;&lt;br /&gt;Jar file          Contents&lt;br /&gt;--------          --------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;jtopen_x_x_source.zip  This is a zip file of all the source files in the repository.&lt;br /&gt;It is not a Java jar file.&lt;br /&gt;&lt;br /&gt;jtopen_x_x_javadoc.zip This is a zip file of the javadoc (in HTML format) for&lt;br /&gt;the JTOpen source files. It is not a Java jar file.&lt;br /&gt;&lt;br /&gt;jt400.jar(*)         This is the main JTOpen jar file. It contains almost all open&lt;br /&gt;source code (except for the few Toolbox classes that could&lt;br /&gt;not be open-sourced), including the utilities package,&lt;br /&gt;and the JDBC driver (JDBC 3.0).&lt;br /&gt;&lt;br /&gt;jt400Micro.jar(*)    This contains the ToolboxME (Micro Edition) classes for&lt;br /&gt;use on a handheld device.&lt;br /&gt;&lt;br /&gt;jt400Native.jar(*)   Previously known as jt400Access.zip, this jar does not&lt;br /&gt;contain the vaccess package. It does contain the native&lt;br /&gt;optimization classes necessary for running performance-enhanced&lt;br /&gt;applications on IBM i, i5/OS, or OS/400 JVM.&lt;br /&gt;&lt;br /&gt;jt400Proxy.jar(*)    This jar contains just the classes needed to run a client&lt;br /&gt;application using the Toolbox proxy server. It is&lt;br /&gt;especially useful in environments where a smaller jar&lt;br /&gt;is needed.&lt;br /&gt;&lt;br /&gt;jt400Servlet.jar(*)  This jar contains the html and servlet packages.&lt;br /&gt;&lt;br /&gt;jui400.jar(*)        Contains the PDML runtime packages as provided by&lt;br /&gt;the Graphical Toolbox.&lt;br /&gt;&lt;br /&gt;uitools.jar(*)       Contains the GUI Builder packages as provided by the&lt;br /&gt;Graphical Toolbox.&lt;br /&gt;&lt;br /&gt;util400.jar(*)       Contains various utilities.&lt;br /&gt;&lt;br /&gt;composer.jar(*)      Contains XSL stylesheet composer classes.&lt;br /&gt;&lt;br /&gt;reportwriter.jar(*)  Contains XSL report processor classes.&lt;br /&gt;&lt;br /&gt;outputwriters.jar(*) Contains PDF, PCL, and font classes.&lt;br /&gt;&lt;br /&gt;tes.jar(*)           Contains the IBM i Graphical Debugger.&lt;br /&gt;&lt;br /&gt;jtopen_x_x_jdbc40.zip  This zip file contains versions of jt400.jar and&lt;br /&gt;jt400Native.jar (along with source code) that are&lt;br /&gt;compatible for use with JDBC 4.0.  This zip file requires&lt;br /&gt;that you be running on Java 6.0 or higher.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(*) Files contained in file jtopen_x_x.zip.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;There are other jar files shipped in the download for JTOpen off of the Toolbox&lt;br /&gt;downloads page. Those jar files do not (yet) contain JTOpen code. They are&lt;br /&gt;provided as a convenience to the developer and to mirror the objects that ship&lt;br /&gt;with the Toolbox LPP.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Building and Using JTOpen&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Instructions for using JTOpen:&lt;br /&gt;1. Download the JTOpen jt400.jar.&lt;br /&gt;2. Add it to your CLASSPATH.&lt;br /&gt;3. Run your application.&lt;br /&gt;&lt;br /&gt;Instructions for building all or part of the &lt;b&gt;as400&lt;/b&gt; JTOpen source code:&lt;br /&gt;Note: Complete build instructions are specified in the commentary in file&lt;br /&gt;/build/build.xml&lt;br /&gt;1. Download the JTOpen jt400.jar.&lt;br /&gt;2. Download any source files you want to change. The src.zip file includes&lt;br /&gt;all of the source in the repository for convenience.&lt;br /&gt;3. Set up your CLASSPATH to include everything in the correct order:&lt;br /&gt;a. Your source files should be in your CLASSPATH first. Note that you&lt;br /&gt;cannot point to src.zip - you must unzip it, since it contains only&lt;br /&gt;source files.&lt;br /&gt;b. Next, add jt400.jar.&lt;br /&gt;c. Your CLASSPATH should look something like this:&lt;br /&gt;CLASSPATH=C:\jt400\MyApp;C:\jt400\jt400.jar;...&lt;br /&gt;4. Compile your source.&lt;br /&gt;5. Run your as400 application that uses JTOpen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6380908846478448782?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 JTOpen 6.5.1 Available'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6380908846478448782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/jtopen-651-available.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6380908846478448782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6380908846478448782'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/jtopen-651-available.html' title='AS400 JTOpen 6.5.1 Available'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5922957707345860435</id><published>2009-05-22T08:44:00.003+01:00</published><updated>2009-05-22T09:21:01.789+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ibm'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='smart cube'/><title type='text'>The AS/400 is Dead - All Hail The 'Smart Cube'</title><content type='html'>Ok, you got me, the as400 will never actually die. Its too good to die. But like Doctor Who, every few years, it changes. This time the metamorphasis of the as400 leaves us with something surprising. The 'Smart Cube'.&lt;br /&gt;&lt;br /&gt;From IBM&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The Smart Cube is a complete application-ready platform with all server hardware and software needed, pre-configured and ready-to-use, with no manuals required. In a few easy steps, businesses can be up and running with a complete IT solution to run their business, including the operating system, integrated middleware, database, security and back-office functionality such as file, print, backup and recovery, combined with the business application they acquired&lt;/blockquote&gt; &lt;b&gt;(what does that sound like!)&lt;/b&gt; &lt;br /&gt;&lt;br /&gt;IBM Smart Cube  7277&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;This product is available separately at a suggested retail price per system starting at $974.00/month or $31,128.00 and may also be included as part of a complete solution&lt;/blockquote&gt; &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;IBM Smart Business Solution – Small Power 520 is a powerful and integrated server that is designed to run all of the business applications a medium sized business needs (e.g. Finance, Accounting, ERP, CRM, IP Telephony) with no IT complexity. The solution includes an IBM Smart Cube – Small Power 520 server with a 1-core Power 6 processor. The Smart Cube remains connected to IBM Smart Market which provides remotely delivered services including help desk and solution support, monitoring, backup and recovery, security and business collaboration. IBM Smart Cube comes with the pre-loaded IBM Smart Business Software Pack, including everything needed to run business applications and workloads. • Application Servers and Java support • Database Servers • Web Servers • File &amp; Print Servers • Network &amp; Application Security: • Directory Servers • Built-In backup and recovery • i Operating System. IBM Smart Cubes provide many serviceability and ease-of-use features designed to enhance the support experience for customers. IBM Smart Business Software Pack includes wizard-based application management and problem solving interfaces that can be extended to vendor application software prepared specifically for this environment. Customers will have the option to configure their solutions to automatically find and install new fixes. The Smart Desk, included in the Smart Cube, provides a single consistent interface to manage, license, administer, and maintain applications&lt;br /&gt;&lt;br /&gt;IBM Smart Cubes come with pre-loaded IBM Smart Business Software Pack, pre-configured, ready to use; including operating system, middleware, database, security, backup and recovery and etc;&lt;br /&gt;&lt;br /&gt;Business applications are pre-integrated with IBM Smart Business Integration Integrator and ready for automatic download at the customer installation, in simple steps.&lt;br /&gt;&lt;br /&gt;The IBM Smart Cubes come with the pre-loaded security software, including firewall/VPN, Antivirus protection, web filtering, anti spam and application protection, to offer preemptive protection for the IT infrastructure for small and medium size companies.&lt;br /&gt;&lt;br /&gt;The IBM Smart Support Team will provide a “single point of entry” into the larger IBM technical support structure, as well as into the software vendors’ support teams who handle the technical problems associated with application software.&lt;br /&gt;&lt;br /&gt;The IBM Smart Cube provides a single interface and source for fix acquisition and deployment across Customer’s Smart Business solution.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://ibmsmartcube.blogspot.com/2009/05/ibm-smart-cube-hardware.html"&gt;IBM Smart Cube&lt;/a&gt; uses powerful IBM server platforms. The IBM Smart Business customers can start with entry-level IBM Smart Cube and move to the advanced server platform, all with the compatible IBM Smart Business Software Pack.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5922957707345860435?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='The AS/400 is Dead - All Hail The &apos;Smart Cube&apos;'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5922957707345860435/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-is-dead-all-hail-smart-cube.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5922957707345860435'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5922957707345860435'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-is-dead-all-hail-smart-cube.html' title='The AS/400 is Dead - All Hail The &apos;Smart Cube&apos;'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5230186923351209149</id><published>2009-05-21T19:19:00.002+01:00</published><updated>2009-05-21T19:21:58.714+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='user space'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>User Space APIs</title><content type='html'>User spaces are objects that used for storing user-defined information. They are permanent objects that are located in either the system domain or the user domain. They have an object type of *USRSPC and a maximum size of 16MB. You can save and restore user spaces to other systems. If, however, the user spaces contain pointers, you cannot restore the pointers even if you want to restore them to the same system.&lt;br /&gt;&lt;br /&gt;You can use the user space APIs to:&lt;br /&gt;&lt;br /&gt;Create user spaces to be used by list APIs to generate lists of data.&lt;br /&gt;Store pointers.&lt;br /&gt;Store large amounts of data. You can create a user space as large as 16 megabytes. You cannot create a data area larger than 2000 bytes.&lt;br /&gt;Save information in user space objects, and save and restore the object with the information in it using CL commands.&lt;br /&gt;Pass data from job to job or from system to system.&lt;br /&gt;&lt;br /&gt;Note: If the allow user domain (QALWUSRDMN) system value contains only the QTEMP library, you can use only the user space APIs to create and manipulate user domain spaces in library QTEMP. You cannot use the Retrieve Pointer to User Space API&lt;br /&gt;&lt;br /&gt;The user space APIs allow you to create and delete user spaces, change and retrieve the contents of user spaces, and change and retrieve information about user spaces.&lt;br /&gt;&lt;br /&gt;For additional information, see Using User Space APIs.&lt;br /&gt;&lt;br /&gt;The user space APIs are:&lt;br /&gt;&lt;br /&gt;Change User Space (QUSCHGUS) changes the contents of a user space.&lt;br /&gt;&lt;br /&gt;Change User Space Attributes (QUSCUSAT) changes the attributes of a user space object.&lt;br /&gt;&lt;br /&gt;Create User Space (QUSCRTUS) creates a user space.&lt;br /&gt;&lt;br /&gt;Delete User Space (QUSDLTUS) deletes user spaces created with the QUSCRTUS API.&lt;br /&gt;&lt;br /&gt;Retrieve Pointer to User Space (QUSPTRUS) retrieves a pointer to the beginning of a user space for a high-level language (HLL) that supports pointers. HLLs that support pointers can use this pointer to manipulate the contents of a user space directly.&lt;br /&gt;&lt;br /&gt;Retrieve User Space (QUSRTVUS) retrieves the contents of a user space. It does not retrieve descriptive information about the user space, such as its size.&lt;br /&gt;&lt;br /&gt;Retrieve User Space Attributes (QUSRUSAT) retrieves information about creation attributes and current operational statistics of the user space, such as its size.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5230186923351209149?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='User Space APIs'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5230186923351209149/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/user-space-apis.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5230186923351209149'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5230186923351209149'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/user-space-apis.html' title='User Space APIs'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1120394158946518015</id><published>2009-05-21T18:55:00.002+01:00</published><updated>2009-05-21T19:14:29.861+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Sending and receiving email on i5/os -  QtmmSendMail</title><content type='html'>&lt;b&gt;i5/os QtmmSendMail API&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The i5os Send MIME Mail (QtmmSendMail) API lets you to send email from a HLL program and lets you send multiple mail attachments at one time&lt;br /&gt;&lt;br /&gt;&lt;a href="http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/rzair/rzairsendmime.htm"&gt;http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/rzair/rzairsendmime.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mcpressonline.com/tips-techniques/apis/techtip-using-the-qtmmsendmail-api.html"&gt;Using the QtmmSendMail API&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1120394158946518015?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Sending and receiving email on i5/os -  QtmmSendMail'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1120394158946518015/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/sending-and-receiving-email-on-i5os.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1120394158946518015'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1120394158946518015'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/sending-and-receiving-email-on-i5os.html' title='Sending and receiving email on i5/os -  QtmmSendMail'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-503270838213430404</id><published>2009-05-21T18:43:00.003+01:00</published><updated>2009-05-21T18:49:54.483+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='os/400'/><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>os400 - i5os - API Finders</title><content type='html'>Use the os400 / i5os API finders to find documentation operating system APIs and some APIs for related licensed programs,by category or by name&lt;br /&gt;&lt;br /&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/index.jsp?topic=/apifinder/finder.htm"&gt;V6R1 API Finder&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/apifinder/finder.htm"&gt;V5R4 API Finder&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r3/topic/apis/apifinder.htm"&gt;V5R3 API Finder&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-503270838213430404?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='os400 - i5os - API Finders'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/503270838213430404/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/os400-i5os-api-finders.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/503270838213430404'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/503270838213430404'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/os400-i5os-api-finders.html' title='os400 - i5os - API Finders'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-175942019454081497</id><published>2009-05-21T09:41:00.000+01:00</published><updated>2009-05-21T09:42:57.271+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='journalling'/><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='db2'/><title type='text'>Striving for Optimal Journal Performance on DB2 Universal Database for iSeries</title><content type='html'>http://www.redbooks.ibm.com/abstracts/SG246286.html?Open&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Journaling is an inherent feature of OS/400 on the iSeries that has been around since the early releases of the System/38. The system employs journals to ensure data integrity and recoverability and this support can further be extended to reduce the duration of an abnormal system end. Journaling also serves as the cornerstone upon which many data replication and data warehouse refresh schemes are built.&lt;br /&gt;The aim of this IBM Redbook is to provide you with an understanding of the factors which influence journal performance on the iSeries and to help you identify which hardware options and software settings you can employ to minimize this impact. We will also share with you some ideas on how to minimize the impact of journaling on your iSeries from an application point of view.&lt;br /&gt;We also explain the remote journal function on the OS/400, which offers a reliable and fast method to transfer journal entries to a remote iSeries server. We performed tests concerning remote journal performance and tested this function in different environments&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-175942019454081497?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Striving for Optimal Journal Performance on DB2 Universal Database for iSeries'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/175942019454081497/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/striving-for-optimal-journal.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/175942019454081497'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/175942019454081497'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/striving-for-optimal-journal.html' title='Striving for Optimal Journal Performance on DB2 Universal Database for iSeries'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-912522660749499308</id><published>2009-05-21T09:23:00.002+01:00</published><updated>2009-05-21T09:26:11.631+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pci'/><category scheme='http://www.blogger.com/atom/ns#' term='ibm i'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Raz-Lees new whitepaper - Achieving PCI Compliance with IBM Power i</title><content type='html'>Check out Raz-Lees new IBM i white paper - Achieving PCI Compliance with IBM Power i. &lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;PCI-DSS consists of 12 requirements within six categories which cover best security practices. This white paper includes a summary of PCI requirements, focusing on the relevant items to Power i security. Each requirement is followed by a guideline specifying how to actually implement the requirement&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://systemisecurity.wordpress.com/2009/05/20/new-white-paper-pci-compliance-with-ibm-power-i/"&gt;http://systemisecurity.wordpress.com/2009/05/20/new-white-paper-pci-compliance-with-ibm-power-i/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-912522660749499308?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Raz-Lees new whitepaper - Achieving PCI Compliance with IBM Power i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/912522660749499308/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/raz-lees-new-whitepaper-achieving-pci.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/912522660749499308'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/912522660749499308'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/raz-lees-new-whitepaper-achieving-pci.html' title='Raz-Lees new whitepaper - Achieving PCI Compliance with IBM Power i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3832314387156162407</id><published>2009-05-21T09:05:00.003+01:00</published><updated>2010-02-19T04:24:36.709Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>as400 api - Process Commands (QCAPCMD) API</title><content type='html'>The as400 Process Commands (QCAPCMD) API is used to check or run CL commands from HLLs as well as check syntax for specific source definition types&lt;br /&gt;&lt;br /&gt;You can use the QCAPCMD as400 API to:&lt;br /&gt;&lt;br /&gt;Check the syntax of a command string prior to running it&lt;br /&gt;Prompt the command and receive the changed command string&lt;br /&gt;Run a command from an HLL&lt;br /&gt;&lt;br /&gt;An advantage of using QCAPCMD over QCMDEXC is the exception handling. An exception that occurs when using QCAPCMD command is trapped and notified via the QUSEC structure. The error is not passed up the call stack so can be handled gracefully in programs.&lt;br /&gt;&lt;br /&gt;ILE RPG Example of QCAPCMD API&lt;br /&gt;&lt;br /&gt;RPGLE: &lt;br /&gt;&lt;br /&gt;&lt;pre&gt;fnewfile   if   e           k disk    usropn &lt;br /&gt;dcommand          s             40    inz(' ') &lt;br /&gt;dcmdlng           s             10i 0 inz(40) &lt;br /&gt;docb              ds &lt;br /&gt;d type                          10i 0 inz(0) &lt;br /&gt;d DBCSdh                         1    inz('0') &lt;br /&gt;d prompt                         1    inz('0') &lt;br /&gt;d cmdsyntax                      1    inz('0') &lt;br /&gt;d msgrtvkey                      4    inz(x'00000000') &lt;br /&gt;d reserve1                       9    inz(x'000000000000000000') &lt;br /&gt;docblength                      10i 0 inz(x'00000014') &lt;br /&gt;docbfmt                          8    inz('CPOP0100') &lt;br /&gt;dchgcmd                          1    inz(' ') &lt;br /&gt;dlngchgcmd                      10i 0 inz(0) &lt;br /&gt;dlngchgrtn                      10i 0 inz(0) &lt;br /&gt;d/COPY QSYSINC/QRPGleSRC,QUSEC &lt;br /&gt;d qused01                17    116 &lt;br /&gt;c                   eval      command = 'OVRDBF NEWFILE SHARE(*YES)' &lt;br /&gt;c                   Z-ADD     116           QUSBprv &lt;br /&gt;c                   call      'QCAPCMD' &lt;br /&gt;c                   parm                    command &lt;br /&gt;c                   parm                    cmdlng &lt;br /&gt;c                   parm                    ocb &lt;br /&gt;c                   parm                    ocblength &lt;br /&gt;c                   parm                    ocbfmt &lt;br /&gt;c                   parm                    chgcmd &lt;br /&gt;c                   parm                    lngchgcmd &lt;br /&gt;c                   parm                    lngchgrtn &lt;br /&gt;c                   parm                    QUSEC &lt;br /&gt;c     QUSBavl       ifgt      0 &lt;br /&gt;c     'Error on API'DSPLY &lt;br /&gt;c     qusei         dsply &lt;br /&gt;c                   end &lt;br /&gt;c                   open      newfile &lt;br /&gt;c     *loval        setll     fmt1 &lt;br /&gt;c                   read      fmt1                                   30 &lt;br /&gt;c     *in30         ifeq      '0' &lt;br /&gt;c     fld1          dsply &lt;br /&gt;c                   else &lt;br /&gt;c     'No Records'  dsply &lt;br /&gt;c                   end &lt;br /&gt;c                   close     newfile &lt;br /&gt;c                   eval      *INLR = '1' &lt;br /&gt;&lt;br /&gt;DDS for newfile: &lt;br /&gt;&lt;br /&gt;R FMT1                               &lt;br /&gt;FLD1          10                   &lt;br /&gt;FLD2          10                   &lt;br /&gt;K FLD1  &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;More as400 Command API examples to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3832314387156162407?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 api - Process Commands (QCAPCMD) API'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3832314387156162407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-process-commands-qcapcmd-api.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3832314387156162407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3832314387156162407'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-process-commands-qcapcmd-api.html' title='as400 api - Process Commands (QCAPCMD) API'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4517221699697059611</id><published>2009-05-21T02:48:00.006+01:00</published><updated>2010-04-20T07:01:02.921+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS400 API - QCMDEXC - Execute Command</title><content type='html'>&lt;h1&gt;The Execute Command (QCMDEXC) program is an ibm &lt;b&gt;as400&lt;/b&gt; API that runs a single command.&lt;/H1&gt;The command runs as if it was not in a program. Therefore, variables cannot be used on the command because values cannot be returned by the &lt;b&gt;as400&lt;/b&gt; command to CL variables. Additionally, commands that can only be used in CL procedures or programs cannot be run by the QCMDEXC program. The format of the call to the QCMDEXC program is the following:&lt;br /&gt;&lt;br /&gt;CALL PGM(&lt;b&gt;QCMDEXC&lt;/b&gt;) PARM(command command-length)&lt;br /&gt;&lt;br /&gt;Enter the command you want to run as a character string on the first parameter. You must specify the command library.&lt;br /&gt;&lt;br /&gt;CALL PGM(QCMDEXC )  PARM('QSYS/CRTLIB LIB(TEST)' 22)&lt;br /&gt;&lt;br /&gt;Remember that you must enclose the as400 command in single quotation marks if it contains blanks. The maximum length of the character string is 6000 characters; never count the delimiters (the single quotation marks ) as part of the string. The length that is specified as the second value on the PARM parameter is the length of the character string that is passed as the command. Length must be a packed decimal value of length 15 with 5 decimal positions&lt;br /&gt;&lt;br /&gt;Example of Using QCMDEXC in an RPGLE Procedure&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;d Quote           C                   Const(X'7D')   &lt;br /&gt;d StdCmd          S            200A                 &lt;br /&gt;d StdLen          S             15P 5               &lt;br /&gt;&lt;br /&gt;D Execute         PR                  ExtPgm('QCMDEXC')             &lt;br /&gt;D     CmdStr                          Like(StdCmd)                 &lt;br /&gt;D                                     Options(*VarSize)             &lt;br /&gt;D                                     Const                         &lt;br /&gt;D     CmdStrLen                       Like(StdLen) Const           &lt;br /&gt;D*    IGCPrcCtl                  3    Options( *NoPass )           &lt;br /&gt;D*                                    Const                         &lt;br /&gt;*--------------------------------------------------               &lt;br /&gt;d var1            S                   Like(StdCmd)                 &lt;br /&gt;d var2            S                   Like(stdLen)                 &lt;br /&gt;d                                     Inz(%size(var1))             &lt;br /&gt;&lt;br /&gt;c                   eval      var1 =                               &lt;br /&gt;c                             'CPYTOSTMF' + ' ' +                   &lt;br /&gt;c                             'FROMMBR(' + Quote +                 &lt;br /&gt;c                             '/QSYS.LIB/LIBNAME.LIB' +           &lt;br /&gt;c                             '/QRPGLESRC.FILE/RPG1.MBR' +   &lt;br /&gt;c                             Quote + ') ' +                       &lt;br /&gt;c                             'TOSTMF(' + Quote +                   &lt;br /&gt;c                             '/home/test.txt' +       &lt;br /&gt;c                             Quote + ') ' +                       &lt;br /&gt;c                             'STMFOPT(*REPLACE)'                 &lt;br /&gt;&lt;br /&gt;c                   callp     Execute(var1:var2)                   &lt;br /&gt;&lt;br /&gt;c                   eval      *inlr = *on&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Another example of using QCMDEXC to execute CL commands&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;*                                                         &lt;br /&gt;d CmdLength       s             15  5                      &lt;br /&gt;d CmdString       s            256                         &lt;br /&gt; *                                                         &lt;br /&gt; * Procedure calls                                         &lt;br /&gt; *                                                         &lt;br /&gt;d Command         pr                  EXTPGM('QCMDEXC')    &lt;br /&gt;d  CmdString                   256                         &lt;br /&gt;d  CmdLength                    15  5                      &lt;br /&gt; *                                                         &lt;br /&gt;c                   eval      *inlr = *on                  &lt;br /&gt;   //=========================================             &lt;br /&gt;   //  *inzsr - One time run subroutine.                   &lt;br /&gt;   //=========================================             &lt;br /&gt;                                                           &lt;br /&gt; /free                                                     &lt;br /&gt;   begsr *inzsr;&lt;br /&gt;                                           &lt;br /&gt;   cmdstring = 'dlyjob 10';                                &lt;br /&gt;   cmdlength = %len(%trim(cmdstring));                     &lt;br /&gt;   command(cmdstring : cmdlength);     &lt;br /&gt;                    &lt;br /&gt;   endsr;                      &lt;br /&gt; /end-free&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;* Procedure calls&lt;br /&gt;      *&lt;br /&gt;     d RUNCOMMAND      PR                  extpgm('RUNCOMMAND')&lt;br /&gt;     d   CmdString                   30&lt;br /&gt;&lt;br /&gt;     d RUNCOMMAND      PI&lt;br /&gt;     d   CmdString                   30&lt;br /&gt;      *&lt;br /&gt;     d Command         pr                  EXTPGM('QCMDEXC')&lt;br /&gt;     d  CmdString                    30&lt;br /&gt;     d  CmdLength                    15  5&lt;br /&gt;      *&lt;br /&gt;      * Definitions&lt;br /&gt;      *&lt;br /&gt;     d CmdLength       s             15  5&lt;br /&gt;&lt;br /&gt;      *&lt;br /&gt;     c                   eval      *inlr = *on&lt;br /&gt;        //=========================================&lt;br /&gt;        //  *inzsr - One time run subroutine.&lt;br /&gt;        //=========================================&lt;br /&gt;&lt;br /&gt;      /free&lt;br /&gt;        begsr *inzsr;&lt;br /&gt;        cmdlength = %len(%trim(cmdstring));&lt;br /&gt;        command(cmdstring : cmdlength);&lt;br /&gt;        endsr;&lt;br /&gt;      /end-free&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;QCMDEXC could also be called from CL , for instance to run a command dynamically when certain parameters that would be required are not know at run time. In this case calling QCMDEXC from a CL program would be an option. See the QCMDEXC snippet below&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;CHGVAR     VAR(&amp;CMD) VALUE('CHGLIBL LIBL(' *CAT &amp;LIBL +   &lt;br /&gt;                          *TCAT ')')                                   &lt;br /&gt;             CALL       PGM(QCMDEXC) PARM(&amp;CMD &amp;LEN) &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2010/04/managed-as400-hosting.html"&gt;Managed as400 hosting&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More examples of Using QCMDEXC in an as400 RPGLE Procedure to follow.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4517221699697059611?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 API - QCMDEXC - Execute Command'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4517221699697059611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-qcmdexc-execute-command.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4517221699697059611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4517221699697059611'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-qcmdexc-execute-command.html' title='AS400 API - QCMDEXC - Execute Command'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8018759723041683901</id><published>2009-05-20T06:58:00.000+01:00</published><updated>2010-04-20T06:59:44.968+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='managed hosting'/><title type='text'>Managed AS400 Hosting</title><content type='html'>AS/400 &amp; iSeries Managed Hosting&lt;br /&gt;&lt;br /&gt;All these companies offer either management or monitoring as detailed below&lt;br /&gt;&lt;br /&gt;iSeries Managed Hosting:&lt;br /&gt;Their iSeries (AS/400) server(s) managed and located in their Data Center &lt;br /&gt;&lt;br /&gt;iSeries Managed Collocation:&lt;br /&gt;Your iSeries (AS/400) server(s) managed and located in our Data Center &lt;br /&gt;&lt;br /&gt;iSeries Remote Monitoring &amp; Management:&lt;br /&gt;Your iSeries (AS/400) server(s) located in your Data Center, managed remotely by them&lt;br /&gt;&lt;br /&gt;US. &lt;br /&gt;&lt;br /&gt;Connectria offers iSeries managed hosting including managed services for AS/400, eServer &amp; IBM System i&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.connectria.com/as400_hosting.asp"&gt;http://www.connectria.com/as400_hosting.asp&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2009/05/used-as400s.html"&gt;iseries leasing uk&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More Managed as400 hosting details to follow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8018759723041683901?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Managed AS400 Hosting'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8018759723041683901/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2010/04/managed-as400-hosting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8018759723041683901'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8018759723041683901'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2010/04/managed-as400-hosting.html' title='Managed AS400 Hosting'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1377358532164138878</id><published>2009-05-20T01:08:00.002+01:00</published><updated>2009-05-20T01:10:35.560+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='i5/os'/><title type='text'>IBM Announces Replacement for i5/OS</title><content type='html'>&lt;blockquote&gt;Rochester MN - With the recent announcement of the new IBM Power Systems which will replace the System i hardware, the i5/OS will also be replaced and renamed. Because of the much greater capabilities of the new operating system, IBM has named it the Virtual Universe Operating System – VU/OS.&lt;br /&gt;&lt;br /&gt;Running under VU/OS, the individual user appears to have not merely a machine of their own, but an entire universe of their own, in which they can create or remove their own programs, databases, libraries, users, networks, and planetary systems. They need only specify the universe they desire, and the VU/OS system generation program (QGOD) does the rest. This program will reside in the QSYS library. The minimum time for this function is 6 days of activity and 1 day of review. In conjunction with VU/OS, all system programs have been replaced by one program (QPROPHET) which will also reside in the QSYS library. This program has no parameters as it knows what you want to do when it is executed&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;From &lt;a href="http://mid-deranged.com/2009/03/07/ibm-announces-replacement-for-i5os/"&gt;http://mid-deranged.com/2009/03/07/ibm-announces-replacement-for-i5os/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1377358532164138878?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM Announces Replacement for i5/OS'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1377358532164138878/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-announces-replacement-for-i5os.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1377358532164138878'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1377358532164138878'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-announces-replacement-for-i5os.html' title='IBM Announces Replacement for i5/OS'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2621008235246131374</id><published>2009-05-19T17:22:00.006+01:00</published><updated>2010-02-18T03:11:20.766Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><title type='text'>AS400 API - Retrieve Network Attributes (QWCRNETA)</title><content type='html'>The Retrieve Network Attributes (QWCRNETA) as400 API lets you retrieve network attributes&lt;br /&gt;&lt;br /&gt;Infocenter&lt;br /&gt;&lt;br /&gt;&lt;a href="http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/apis/qwcrneta.htm"&gt;http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/apis/qwcrneta.htm&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Network Attributes&lt;br /&gt;&lt;pre&gt;ALRBCKFP Alert backup focal point    &lt;br /&gt;ALRCTLD         Alert controller    &lt;br /&gt;ALRDFTFP Alert focal point    &lt;br /&gt;ALRFTR         Alert filter    &lt;br /&gt;ALRHLDCNT Alert hold count    &lt;br /&gt;ALRLOGSTS Alert logging status    &lt;br /&gt;ALRPRIFP Alert primary focal point    &lt;br /&gt;ALRRQSFP Alert focal point to request    &lt;br /&gt;ALRSTS         Alert status    &lt;br /&gt;ALWADDCLU Allow add to cluster    &lt;br /&gt;ALWANYNET Allow AnyNet support    &lt;br /&gt;ALWHPRTWR Allow HPR tower support    &lt;br /&gt;ALWVRTAPPN Allow virtual APPN support    &lt;br /&gt;VRTAUTODEV Autocreate APPC device limit    &lt;br /&gt;DDMACC         DDM request access    &lt;br /&gt;DFTCNNLST Default ISDN connection list    &lt;br /&gt;DFTMODE         Default mode    &lt;br /&gt;DFTNETTYPE ISDN network type    &lt;br /&gt;DTACPR         Data compression    &lt;br /&gt;DTACPRINM Intermediate data compression    &lt;br /&gt;HPRPTHTMR HPR path switch timers    &lt;br /&gt;JOBACN         Job action    &lt;br /&gt;LCLCPNAME Local control point    &lt;br /&gt;LCLLOCNAME Local location    &lt;br /&gt;LCLNETID Local network ID    &lt;br /&gt;MAXINTSSN Maximum sessions    &lt;br /&gt;MAXHOP         Maximum hop count    &lt;br /&gt;MDMCNTRYID Modem country or region ID    &lt;br /&gt;MSGQ         Message queue    &lt;br /&gt;NETSERVER Server network ID    &lt;br /&gt;NODETYPE APPN node type    &lt;br /&gt;NWSDOMAIN Network server domain    &lt;br /&gt;OUTQ         Output queue    &lt;br /&gt;PNDSYSNAME Pending system name    &lt;br /&gt;PCSACC         Client Access    &lt;br /&gt;RAR         Addition resistance    &lt;br /&gt;SYSNAME         Current system name&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;More as400 commands to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2621008235246131374?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 API - Retrieve Network Attributes (QWCRNETA)'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2621008235246131374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-retrieve-network-attributes.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2621008235246131374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2621008235246131374'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-api-retrieve-network-attributes.html' title='AS400 API - Retrieve Network Attributes (QWCRNETA)'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2345925409797455059</id><published>2009-05-19T13:34:00.004+01:00</published><updated>2009-05-19T13:40:03.524+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='migration'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>The Laughing Boardroom video...a real world example!</title><content type='html'>I posted the laughing boardroom video, an old IBM ad that highlights the infrastructure and manpower changes needed when moving away from the as400 platform, as so much is simple and/or automated.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2009/05/ibm-eserver-iseries-laughing-boardroom.html"&gt;The Laughing Boardroom&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Well I have actually stumbled across a real world example. John Will describes what happened when consultants convinced a utility company that they needed to move from iseries to pseries&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.johnmwillis.com/other/the-laughing-boardroom-ibm-eserver-iseries/"&gt;http://www.johnmwillis.com/other/the-laughing-boardroom-ibm-eserver-iseries/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;This regional, rather large, utility company had been running AS/400 for twenty years with a minimal staff. In fact the current CTO was one of the original AS/400 operators and prior to about a year ago he could have still filled in as an operator in a pinch. Other than some simple web front-ends they basically ran one production box that did all their customer care and billing services. About two years ago a team of consultants were brought in to re-deign their customer care and billing systems. The initial design took them from one production AS/400 (they called it a mainframe) to about 10 P5 physical boxes with about 50 lpars of which about 20 lpars eventually became the replacement solution. On the software side they went from a single box that basically handled everything to a very complex infrastructure&lt;br /&gt;&lt;br /&gt;After the army of consultants had completed the project (over a year) this utility company went from 3 system administrators to about 10 system administrators and they were still understaffed. They also increased head counts for 2 system architects and a project managers. Of course at least three new managers had to be hired. All told they went from a staff of about 5 (including CTO and operations) to a staff of about 20&lt;br /&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2345925409797455059?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='The Laughing Boardroom video...a real world example!'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2345925409797455059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/laughing-boardroom-videoa-real-world.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2345925409797455059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2345925409797455059'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/laughing-boardroom-videoa-real-world.html' title='The Laughing Boardroom video...a real world example!'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4621802106766706268</id><published>2009-05-19T08:32:00.002+01:00</published><updated>2009-05-19T08:43:36.053+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='benchmarking'/><category scheme='http://www.blogger.com/atom/ns#' term='system i'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>L3 Cache Makes All The Difference For Java Apps on IBM i</title><content type='html'>Timothy Prickett Morgan is talking about the performance of the latest Power6+ system i boxes, and benchmark testing of SAP and Lawson products. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/tfh/tfh051809-story06.html"&gt;http://www.itjungle.com/tfh/tfh051809-story06.html&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;A couple of interesting thngs emerge...&lt;br /&gt;&lt;br /&gt;One is that in these tests there was very little diference in performance between a 550 and a 570&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;A Power 520 with a single Power6+ processor with two cores running at 4.7 GHz equipped with 32 GB of memory was able to process 41,090 query navigation steps per hour on the BI-MXL test at 94 percent of CPU utilization on a data warehouse with 300 million records. (That's the smallest database used in the test, which also has 1 million and 3 million record variants.) A Power 550 with two processors and four cores activated running at 5 GHz and with 64 GB of memory was able to handle 90,635 query navigation steps per hour at 98 percent of CPU; for some reason, IBM ran the test again on this box a few weeks later and got a slightly lower 97 percent CPU utilization and only handled 90,492 query navigation steps per hour. (Go figure.) A Power 570 box with four 5 GHz cores and 96 GB of memory did slightly more work, at 93,468 query navigation steps per hour.&lt;br /&gt;The message here is what I have been telling you for years: Don't buy into the Power 570 unless you have to. It is more expensive for modest workloads than a Power 550. If you don't need the expansion that the Power 570 embodies, don't do it&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The other was that L3 cache is very important for java app performance&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;On the M3 tests, Lawson found that the initial Power 520 using that old 1.9 GHz Power5 chip could process about 75,000 invoiced order lines per hour. Moving up to the 4.2 GHz Power6 core boosted performance by 31 percent (not more than 2X as you might expect from the clock speeds because IBM radically changed the instruction pipelines with the Power6 chips), to around 98,250 invoiced order lines per hour. And while the move to the Power6+ chip only boosted the clock speed by 11.9 percent up to 4.7 GHz, the addition of the L3 cache pushed performance up 21 percent to 118,900 invoiced order lines per hour. Which makes you wonder why on Earth IBM ever cropped the L3 cache out of the boxes to artificially crimp performance on the Power 520s and the JS12 and JS22 blades in the first place. That's not a smart move if you are trying to support Java applications&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4621802106766706268?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='L3 Cache Makes All The Difference For Java Apps on IBM i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4621802106766706268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/l3-cache-makes-all-difference-for-java.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4621802106766706268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4621802106766706268'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/l3-cache-makes-all-difference-for-java.html' title='L3 Cache Makes All The Difference For Java Apps on IBM i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6287433813340210938</id><published>2009-05-19T08:23:00.002+01:00</published><updated>2009-05-19T08:27:39.348+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>PHP on the as400</title><content type='html'>Timothy Prickett Morgan discusses the increasing use of PHP on System i.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.itjungle.com/tfh/tfh042009-story01.html"&gt;http://www.itjungle.com/tfh/tfh042009-story01.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;After a year of work in the wake of the alliance, Zend and IBM started shipping a beta version of the Zend Core for i5/OS, which ran in the PASE AIX runtime environment inside i5/OS V5R4. In August of 2006, Zend Core for i5/OS became generally available and in a short time, there were thousands of downloads of the software, which IBM picked up the tab for on behalf of V5R4 shops that wanted to download a PHP engine and integrate it with their i boxes. IBM gave out statistics for downloads every couple of months, but since the creation of the Power Systems division, which converged the System i and System p lines last April, IBM has been pretty mum in terms of Zend Core for i downloads. The latest number that I have heard is that there have been 12,000 cumulative downloads of Zend Core for various i platforms, including machines running OS/400 V5R3, i5/OS V5R4, and i 6.1&lt;br /&gt;&lt;br /&gt;According to this Gartner data, the vast majority of PHP developers in 2007 were part-time developers and hobbyists, with a small number of corporate PHP developers. But by 2013, Gartner expects there to be millions of professional PHP developers at software vendors and in IT shops, with the base of hobbyists and part-timers being about the same. And we all know who is going to be spending money on PHP tools, creating real-world, enterprise-class PHP applications, and making a living from PHP&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6287433813340210938?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='PHP on the as400'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6287433813340210938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/php-on-as400.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6287433813340210938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6287433813340210938'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/php-on-as400.html' title='PHP on the as400'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2509651410042187542</id><published>2009-05-18T19:17:00.000+01:00</published><updated>2009-05-18T19:18:21.787+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>IBM eServer iSeries - The Laughing Boardroom</title><content type='html'>Came across this....funny&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/nVRHbQPBgEA&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/nVRHbQPBgEA&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2509651410042187542?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM eServer iSeries - The Laughing Boardroom'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2509651410042187542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-eserver-iseries-laughing-boardroom.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2509651410042187542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2509651410042187542'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-eserver-iseries-laughing-boardroom.html' title='IBM eServer iSeries - The Laughing Boardroom'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1803773697205700294</id><published>2009-05-18T18:58:00.000+01:00</published><updated>2009-05-18T18:59:44.761+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='erp'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Web 2.0 with AS/400 - How To Use ERP To Create Useful Services For Customers</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_1320762"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/fullo/web-20-with-as400?type=powerpoint" title="Web 2.0 with AS/400"&gt;Web 2.0 with AS/400&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ideatobolognain-090421072447-phpapp01&amp;stripped_title=web-20-with-as400" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=ideatobolognain-090421072447-phpapp01&amp;stripped_title=web-20-with-as400" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/fullo"&gt;Francesco Fullone&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1803773697205700294?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Web 2.0 with AS/400 - How To Use ERP To Create Useful Services For Customers'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1803773697205700294/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/web-20-with-as400-how-to-use-erp-to.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1803773697205700294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1803773697205700294'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/web-20-with-as400-how-to-use-erp-to.html' title='Web 2.0 with AS/400 - How To Use ERP To Create Useful Services For Customers'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8480684255051419203</id><published>2009-05-18T18:56:00.000+01:00</published><updated>2009-05-18T18:57:17.402+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Building Dynamic Web Applications on i5 with PHP</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_157943"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/coogle/building-dynamic-web-applications-on-i5-with-php?type=powerpoint" title="Building Dynamic Web Applications on i5 with PHP"&gt;Building Dynamic Web Applications on i5 with PHP&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=building-dynamic-web-applications-on-i5-with-php-1194421991637745-2&amp;stripped_title=building-dynamic-web-applications-on-i5-with-php" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=building-dynamic-web-applications-on-i5-with-php-1194421991637745-2&amp;stripped_title=building-dynamic-web-applications-on-i5-with-php" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/coogle"&gt;John Coggeshall&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8480684255051419203?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Building Dynamic Web Applications on i5 with PHP'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8480684255051419203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/building-dynamic-web-applications-on-i5.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8480684255051419203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8480684255051419203'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/building-dynamic-web-applications-on-i5.html' title='Building Dynamic Web Applications on i5 with PHP'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8682178963601723614</id><published>2009-05-18T18:55:00.000+01:00</published><updated>2009-05-18T18:56:09.072+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Integrating PHP With System-i using Web Services</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_67164"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/ijansch/integrating-php-with-system-i-using-web-services?type=powerpoint" title="Integrating PHP With System-i using Web Services"&gt;Integrating PHP With System-i using Web Services&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=integrating-php-with-system-i-using-web-services2110&amp;stripped_title=integrating-php-with-system-i-using-web-services" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=integrating-php-with-system-i-using-web-services2110&amp;stripped_title=integrating-php-with-system-i-using-web-services" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/ijansch"&gt;Ivo Jansch&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8682178963601723614?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Integrating PHP With System-i using Web Services'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8682178963601723614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/integrating-php-with-system-i-using-web.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8682178963601723614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8682178963601723614'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/integrating-php-with-system-i-using-web.html' title='Integrating PHP With System-i using Web Services'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4270218042867950288</id><published>2009-05-18T18:53:00.000+01:00</published><updated>2009-05-18T18:54:48.607+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Adapt, Survive and Thrive with as400 - Eight Pillars of an Enterprise Application Architecture</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_741329"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/mfincham/eight-pillars-of-an-enteprise-application-architecture-presentation?type=powerpoint" title="Eight Pillars of an Enterprise Application Architecture"&gt;Eight Pillars of an Enterprise Application Architecture&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=8-pillars-of-enteprise-application-architecture-1226410878903704-9&amp;stripped_title=eight-pillars-of-an-enteprise-application-architecture-presentation" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=8-pillars-of-enteprise-application-architecture-1226410878903704-9&amp;stripped_title=eight-pillars-of-an-enteprise-application-architecture-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/mfincham"&gt;Martin Fincham&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4270218042867950288?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Adapt, Survive and Thrive with as400 - Eight Pillars of an Enterprise Application Architecture'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4270218042867950288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/adapt-survive-and-thrive-with-as400.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4270218042867950288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4270218042867950288'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/adapt-survive-and-thrive-with-as400.html' title='Adapt, Survive and Thrive with as400 - Eight Pillars of an Enterprise Application Architecture'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-479782565394445275</id><published>2009-05-18T18:48:00.000+01:00</published><updated>2009-05-18T18:49:28.749+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vendor'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Your iSeries is a jewel...but what about the software?</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_780859"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/mfincham/info4iSeries-final?type=powerpoint" title="Your iSeries is a jewel...but what about the software?"&gt;Your iSeries is a jewel...but what about the software?&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=your-iseries-is-a-gem-1227474719970854-9&amp;stripped_title=info4iSeries-final" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=your-iseries-is-a-gem-1227474719970854-9&amp;stripped_title=info4iSeries-final" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/mfincham"&gt;Martin Fincham&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-479782565394445275?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Your iSeries is a jewel...but what about the software?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/479782565394445275/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/your-iseries-is-jewelbut-what-about.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/479782565394445275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/479782565394445275'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/your-iseries-is-jewelbut-what-about.html' title='Your iSeries is a jewel...but what about the software?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-578146693013779215</id><published>2009-05-18T18:46:00.000+01:00</published><updated>2009-05-18T18:47:16.535+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='crypt'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Linoma Crypto Complete - Encryption Suite for System i</title><content type='html'>&lt;div style="width:425px;text-align:left" id="__ss_917836"&gt;&lt;a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/stuartk/linoma-cryptocomplete-presentation?type=powerpoint" title="Linoma CryptoComplete"&gt;Linoma CryptoComplete&lt;/a&gt;&lt;object style="margin:0px" width="425" height="355"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=cryptocomplete-1231969603108984-2&amp;stripped_title=linoma-cryptocomplete-presentation" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=cryptocomplete-1231969603108984-2&amp;stripped_title=linoma-cryptocomplete-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"&gt;View more &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a style="text-decoration:underline;" href="http://www.slideshare.net/stuartk"&gt;Stuart Marsh&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-578146693013779215?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Linoma Crypto Complete - Encryption Suite for System i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/578146693013779215/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/linoma-crypto-complete-encryption-suite.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/578146693013779215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/578146693013779215'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/linoma-crypto-complete-encryption-suite.html' title='Linoma Crypto Complete - Encryption Suite for System i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2822812361603661572</id><published>2009-05-18T17:59:00.002+01:00</published><updated>2009-05-18T18:03:03.634+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><title type='text'>AS400 OS400 API Include Files</title><content type='html'>The system include or API copybook library QSYSINC, contains all the source includes for APIs shipped with OS/400 (i5/os). This optional library is fully supported, so any errors found in the includes can be reported to IBM.&lt;br /&gt;&lt;br /&gt;http://publib.boulder.ibm.com/infocenter/iseries/v5r3/index.jsp?topic=/apis/conQSYSINC.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2822812361603661572?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 OS400 API Include Files'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2822812361603661572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-os400-api-include-files.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2822812361603661572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2822812361603661572'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-os400-api-include-files.html' title='AS400 OS400 API Include Files'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8634904863156184829</id><published>2009-05-18T17:37:00.003+01:00</published><updated>2009-05-18T17:47:17.682+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='crypt'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Decrypt Data on AS400 - QC3DECDT, Qc3DecryptData API</title><content type='html'>The Decrypt Data (OPM, QC3DECDT; ILE, Qc3DecryptData) API restores encrypted data to a clear (intelligible) form&lt;br /&gt;&lt;br /&gt;example&lt;br /&gt;&lt;br /&gt;calling Qc3EncryptData with Pointers&lt;br /&gt;&lt;br /&gt;http://forums.systeminetwork.com/isnetforums/showthread.php?p=211649&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; Sample program to demonstrate use of Cryptographic Services APIs.  &lt;br /&gt;APIs demonstrated in this program are:&lt;br /&gt;      Create Algorithm Context&lt;br /&gt;      Create Key Context&lt;br /&gt;      Decrypt Data&lt;br /&gt;      Destroy Key Context&lt;br /&gt;      Destroy Algorithm Context&lt;br /&gt;      &lt;br /&gt;http://publib.boulder.ibm.com/infocenter/iseries/v5r4/index.jsp?topic=/apis/qc3BillCusILERPG.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8634904863156184829?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Decrypt Data on AS400 - QC3DECDT, Qc3DecryptData API'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8634904863156184829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/decrypt-data-on-as400-opm-qc3decdt-ile.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8634904863156184829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8634904863156184829'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/decrypt-data-on-as400-opm-qc3decdt-ile.html' title='Decrypt Data on AS400 - QC3DECDT, Qc3DecryptData API'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-9196048272219910102</id><published>2009-05-18T15:40:00.003+01:00</published><updated>2010-02-18T03:10:37.155Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='odbc'/><category scheme='http://www.blogger.com/atom/ns#' term='jdbc'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><category scheme='http://www.blogger.com/atom/ns#' term='connection strings'/><title type='text'>as400 database connection strings</title><content type='html'>Connection string examples when connecting to an as400, iseries, system i, os400, i5os&lt;br /&gt;&lt;br /&gt;as400 JDBC connection string&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;jdbc:as400://mySystem;user=myUid;password=myPwd;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;IBM DB2 for i .NET data provider&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;DataSource=myServerAddress;UserID=myUsername;Password=myPassword; DataCompression=True;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;IBM Client Access OLE DB provider&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Provider=IBMDA400;Data Source=MY_SYSTEM_NAME;User Id=myUsername;Password=myPassword;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;.NET Framework Data Provider for OLE DB&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Provider=IBMDA400;Data Source=MY_SYSTEM_NAME;User Id=myUsername;Password=myPassword;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Client Access ODBC driver&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Driver={Client Access ODBC Driver (32-bit)};System=my_system_name;Uid=myUsername;Pwd=myPassword&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;iSeries Access ODBC driver&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Driver={iSeries Access ODBC Driver};System=my_system_name;Uid=myUsername;Pwd=myPassword;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;.NET Framework Data Provider for ODBC&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Driver={Client Access ODBC Driver (32-bit)};System=my_system_name;Uid=myUsername;Pwd=myPassword;&lt;/pre&gt;&lt;br /&gt;More as400 database connection strings to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-9196048272219910102?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 database connection strings'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/9196048272219910102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-connection-strings.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/9196048272219910102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/9196048272219910102'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-connection-strings.html' title='as400 database connection strings'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1351807731332982401</id><published>2009-05-18T14:57:00.003+01:00</published><updated>2009-05-18T15:02:11.730+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rpg'/><category scheme='http://www.blogger.com/atom/ns#' term='history'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>80 Column Punched Cards and the History of RPG on the AS400</title><content type='html'>An article where Jon Paris discusses the lineage of punched cards that leads to RPG and the as400...&lt;br /&gt;&lt;br /&gt;http://ibmsystemsmag.blogs.com/idevelop/2007/09/of-80-column-pu.html&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Anyway it got me thinking about how little many of us know of our own history as it relates to the IT industry. Would you believe that there are people out there who actually believe that Bill Gates and Microsoft invented the concept of a windowing GUI! They probably believe they invented DOS too--poor misguided souls. &lt;br /&gt;&lt;br /&gt;On the subject of punch cards, let's take a quick look at how they impacted our favorite language--RPG. Since some of you may not have actually seen a punch card before, here's a picture of one so that we all know of which we speak:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://ibmsystemsmag.blogs.com/.shared/image.html?/photos/uncategorized/2007/09/24/punchcomb.jpg" alt="rpg punched card as400"/&gt;&lt;br /&gt;&lt;br /&gt;As you can see there are 80 vertical columns, which explains the 80-column limit in RPG II and RPG III. You might also have wondered why the first five columns of the spec are designated as the sequence number. Well, suppose you had a 600-line RPG program and it was on punch cards. Now suppose that you dropped the box and 600 cards hit the floor. How long do you think it would take you to put the program back in order? Now you understand the reason for the sequence number.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1351807731332982401?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='80 Column Punched Cards and the History of RPG on the AS400'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1351807731332982401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/80-column-punched-cards-and-history-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1351807731332982401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1351807731332982401'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/80-column-punched-cards-and-history-of.html' title='80 Column Punched Cards and the History of RPG on the AS400'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5976834728626652865</id><published>2009-05-18T13:51:00.002+01:00</published><updated>2010-02-24T01:21:28.532Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='upgrades'/><category scheme='http://www.blogger.com/atom/ns#' term='i5'/><category scheme='http://www.blogger.com/atom/ns#' term='v6r1'/><category scheme='http://www.blogger.com/atom/ns#' term='ibm'/><title type='text'>IBM Redbooks | IBM i5/OS Program Conversion: Getting Ready for i5/OS V6R1</title><content type='html'>http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/redp4293.html?Open&lt;br /&gt;&lt;br /&gt;This IBM Redbooks Redpaper publication is intended for i5 system administrators and field technicians to help them understand and prepare for upgrading or migrating to &lt;b&gt;i5/OS&lt;/b&gt; V6R1. It explains what the program conversion is and why programs are being created or re-created on V6R1. It then provides detailed steps for using the ANZOBJCVN tool on V5R3 or V5R4 to prepare for &lt;b&gt;V6R1&lt;/b&gt; object conversions. Finally this Redbooks Redpaper discusses the program conversion methods for converting programs to run on i5/os V6R1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5976834728626652865?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM Redbooks | IBM i5/OS Program Conversion: Getting Ready for i5/OS V6R1'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5976834728626652865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-i5os-program-conversion-getting.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5976834728626652865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5976834728626652865'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-i5os-program-conversion-getting.html' title='IBM Redbooks | IBM i5/OS Program Conversion: Getting Ready for i5/OS V6R1'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8316123417569457853</id><published>2009-05-18T13:46:00.002+01:00</published><updated>2009-05-18T13:49:54.221+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='redbook'/><category scheme='http://www.blogger.com/atom/ns#' term='security'/><title type='text'>Redbook - as400 Security - IBM System i Security: Protecting i5/OS Data with Encryption</title><content type='html'>Redbook - as400 Security - IBM System i Security: Protecting i5/OS Data with Encryption&lt;br /&gt;&lt;br /&gt;http://www.redbooks.ibm.com/abstracts/sg247399.html&lt;br /&gt;&lt;br /&gt;Part 1, "Introduction to data encryption" , introduces key concepts, terminology, algorithms, and key management.&lt;br /&gt;&lt;br /&gt;Part 2, "Planning for data encryption" , provides critical information for planning a data encryption project on i5/OS.&lt;br /&gt;&lt;br /&gt;Part 3, "Implementation of data encryption" , provides various implementation scenarios with a step-by-step guide&lt;br /&gt;&lt;br /&gt;Part 1. Introduction to data encryption&lt;br /&gt;Chapter 1. Data encryption: the big picture&lt;br /&gt;Chapter 2. Algorithms, operations, and System i implementations&lt;br /&gt;Chapter 3. Key management concepts&lt;br /&gt;&lt;br /&gt;Part 2. Planning for data encryption&lt;br /&gt;Chapter 4. Analyzing needs and defining scope&lt;br /&gt;Chapter 5. Managing keys on System i&lt;br /&gt;Chapter 6. Choosing a data encryption method&lt;br /&gt;Chapter 7. Database considerations&lt;br /&gt;Chapter 8. Application considerations&lt;br /&gt;Chapter 9. Backup considerations&lt;br /&gt;&lt;br /&gt;Part 3. Implementation of data encryption&lt;br /&gt;Chapter 10. SQL method&lt;br /&gt;Chapter 11. Cryptographic Services APIs method&lt;br /&gt;Chapter 12. HW-based method&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8316123417569457853?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Redbook - as400 Security - IBM System i Security: Protecting i5/OS Data with Encryption'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8316123417569457853/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/redbook-as400-security-ibm-system-i.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8316123417569457853'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8316123417569457853'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/redbook-as400-security-ibm-system-i.html' title='Redbook - as400 Security - IBM System i Security: Protecting i5/OS Data with Encryption'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1557431004754206124</id><published>2009-05-18T13:28:00.004+01:00</published><updated>2010-02-19T04:09:07.382Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='crypt'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Encrypt Data on as400 (QC3ENCDT, Qc3EncryptData)</title><content type='html'>&lt;b&gt;Encrypt Data on as400 (QC3ENCDT, Qc3EncryptData)&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The Encrypt Data API protects data privacy by scrambling clear data into an unintelligible form, OPM, QC3ENCDT; ILE, Qc3EncryptData&lt;br /&gt;&lt;br /&gt;http://publib.boulder.ibm.com/iseries/v5r2/ic2924/index.htm?info/apis/qc3encdt.htm&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Simplified RC4 or AES Encryption by Bob Cozzi&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;In the last issue, I reported on a few of the new OS/400 encryption APIs: Qc3CalculateHash, Qc3EncryptData, and Qc3DecryptData.&lt;br /&gt;Calling one of these APIs requires careful interpretation of the API's parameter list. The parameter lists consist of various data structures and formatting codes that can be somewhat vexing to say the least. Unless it's for performance reasons, I can't understand why IBM continues to publish APIs that require such complex parameters. Even I find them confusing, and I've been working with OS/400 APIs since before the first ones were even announced.&lt;br /&gt;To help simplify matters, I've written two subprocedures that accept data as input (along with the encryption key/password) and return the data encrypted or decrypted, depending on which subprocedure you call&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;http://www.mcpressonline.com/security/i5/os/simplified-rc4-or-aes-encryption.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;APIs by Example: AES Encryption to Actual Field Length&lt;br /&gt;&lt;br /&gt;By: Carsten Flensburg&lt;br /&gt;&lt;blockquote&gt;I've discussed and demonstrated the Cryptographic Services APIs in past issues of this newsletter. The encryption examples that I presented have all used the Advanced Encryption Standard (AES) algorithm, which offers a current, strong, and well-performing encryption method that has been adopted as an encryption standard by the U.S. government. If you have followed those examples, you know that AES encryption is a block cipher and that the ciphertext produced by AES therefore always is an exact multiple of the block size applied to the cryptographic process. The block size specified for the AES algorithm is 16 bytes, although the Cryptographic Services APIs' implementation of AES offers 24 and 32 bytes block sizes as well.&lt;br /&gt;&lt;br /&gt;For some purposes and situations, the block-size determined length of the ciphertext could be regarded as an inconvenience. In today's APIs by Example, I explain a method for handling data not a multiple of the block length&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;http://systeminetwork.com/article/apis-example-aes-encryption-actual-field-length&lt;br /&gt;&lt;br /&gt;More Encrypting Data on as400 to follow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1557431004754206124?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Encrypt Data on as400 (QC3ENCDT, Qc3EncryptData)'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1557431004754206124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/encrypt-data-on-as400-qc3encdt.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1557431004754206124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1557431004754206124'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/encrypt-data-on-as400-qc3encdt.html' title='Encrypt Data on as400 (QC3ENCDT, Qc3EncryptData)'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8326443868068223553</id><published>2009-05-17T17:52:00.000+01:00</published><updated>2009-05-18T17:57:09.435+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='api'/><title type='text'>Using os400s QEZSNDMSG to  send messages to users</title><content type='html'>The os400 QEZSNDMG API allows you to send a message to users and even allows you to throw up the Send a Message screen&lt;br /&gt;&lt;br /&gt;Example&lt;br /&gt;&lt;br /&gt;http://archive.midrange.com/rpg400-l/200512/msg00006.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8326443868068223553?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using os400s QEZSNDMSG to  send messages to users'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8326443868068223553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-os400s-qezsndmsg-to-send-messages.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8326443868068223553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8326443868068223553'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-os400s-qezsndmsg-to-send-messages.html' title='Using os400s QEZSNDMSG to  send messages to users'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-6140519973842575007</id><published>2009-05-11T23:33:00.003+01:00</published><updated>2009-05-11T23:38:02.101+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iseries'/><category scheme='http://www.blogger.com/atom/ns#' term='data stream'/><category scheme='http://www.blogger.com/atom/ns#' term='debug'/><category scheme='http://www.blogger.com/atom/ns#' term='5250'/><title type='text'>Getting a dump of the iseries 5250 Data Stream Commands</title><content type='html'>&lt;b&gt;Dumping the Iseries 5250 Data Stream&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;To dump the dynamic screen manager APIS ( DSM ) 5250 data stream commands:&lt;br /&gt;&lt;br /&gt;Create a physical file somewhere in your library list called QSNDEBUG with record length 2000. &lt;br /&gt;DSM will dump 5250 data stream commands to QSNDEBUGF found in the library list&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-6140519973842575007?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Getting a dump of the iseries 5250 Data Stream Commands'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/6140519973842575007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/getting-dump-of-iseries-5250-data.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6140519973842575007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/6140519973842575007'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/getting-dump-of-iseries-5250-data.html' title='Getting a dump of the iseries 5250 Data Stream Commands'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3294080431733344152</id><published>2009-05-11T09:37:00.003+01:00</published><updated>2010-02-19T04:22:18.722Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='data queue'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Using as400 QRCVDTAQ api to retrieve a message / entry from a dataqueue</title><content type='html'>Heres an example of using the QRCVDTAQ as400 api to retrieve a message / entry from a as400 dataqueue&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;C                     CALL 'QRCVDTAQ' &lt;br /&gt;C                     PARM 'MYQUEUE' DTQ    10 &lt;br /&gt;C                     PARM 'QTEMP'   DTLIB  10 &lt;br /&gt;C                     PARM 100       LENGTH  50 &lt;br /&gt;C                     PARM           DATA &lt;br /&gt;C                     PARM 0         WAITT   50 &lt;br /&gt;C                     PARM           ORDER   2 &lt;br /&gt;C                     PARM           KLEN    30 &lt;br /&gt;C                     PARM           KEY &lt;br /&gt;C                     PARM           SNDLEN  30 &lt;br /&gt;C                     PARM           ID &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;DTQ           as400 Data queue name &lt;br /&gt;DTLIB         as400 library name &lt;br /&gt;LENGTH        Length of entry received. &lt;br /&gt;zero if no entry received. &lt;br /&gt;DATA          Entry received.  Must be minimum length indicated by LENGTH at least. &lt;br /&gt;WAITT         Time in seconds to wait for an entry.  &lt;br /&gt;Zero = no wait. &lt;br /&gt;-ve number = wait until entry received. &lt;br /&gt;&lt;br /&gt;(only used if dataqueue keyed, optional)&lt;br /&gt;&lt;br /&gt;ORDER         Condition operator, EQ, NE, LT, LE, GT or GE. &lt;br /&gt;KEYLEN        Key length &lt;br /&gt;KEY           Key value. Length indicated by KEYLEN. &lt;br /&gt;SNDLEN        Length of SENDER field &lt;br /&gt;SENDER        Field to receive sender ID.  Usually 44 bytes &lt;br /&gt;&lt;br /&gt;Using as400 QRCVDTAQ api to retrieve a message / entry from a dataqueue&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3294080431733344152?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using as400 QRCVDTAQ api to retrieve a message / entry from a dataqueue'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3294080431733344152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-as400-qrcvdtaq-api-to-retrieve.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3294080431733344152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3294080431733344152'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-as400-qrcvdtaq-api-to-retrieve.html' title='Using as400 QRCVDTAQ api to retrieve a message / entry from a dataqueue'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3372317900011038752</id><published>2009-05-11T09:24:00.005+01:00</published><updated>2010-04-20T07:08:45.063+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='data queue'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><title type='text'>Using as400 QSNDDTAQ api to put a message / entry on a dataqueue</title><content type='html'>Heres an example of using the as400 QSNDDTAQ api to put an entry on a data queue&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;C                     CALL 'QSNDDTAQ' &lt;br /&gt;C                     PARM 'MYQUEUE' DTQ     10 &lt;br /&gt;C                     PARM '*LIBL'   DTLIB   10 &lt;br /&gt;C                     PARM 10        LENGTH  50 &lt;br /&gt;C                     PARM 'START'   DATA &lt;br /&gt;C                     PARM 4         KEYLEN  30 &lt;br /&gt;C                     PARM '*CMD'    KEY&lt;br /&gt;&lt;br /&gt;API Parameters&lt;br /&gt;&lt;br /&gt;DTQ         as400 Data queue name &lt;br /&gt;DTLIB       as400 library name (or *LIBL to search library list) &lt;br /&gt;LENGTH      Entry length &lt;br /&gt;DATA:       Entry.  Maximum length indicated by LENGTH. &lt;br /&gt;KEYLEN:     (optional, only required if if dataqueue *KEYED) Key length &lt;br /&gt;KEY:        (optional, only required if if dataqueue *KEYED)  Key value &lt;br /&gt;maximum length indicated by KEYLEN. &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2009/05/as400-jobs-do-you-have-job-at-moment.html"&gt;as400 jobs&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More info on using Using as400 QSNDDTAQ api to put a message / entry on a dataqueue to follow...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3372317900011038752?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using as400 QSNDDTAQ api to put a message / entry on a dataqueue'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3372317900011038752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-as400-qsnddtaq-api-to-put-message.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3372317900011038752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3372317900011038752'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-as400-qsnddtaq-api-to-put-message.html' title='Using as400 QSNDDTAQ api to put a message / entry on a dataqueue'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-7733964048194794122</id><published>2009-05-11T00:00:00.005+01:00</published><updated>2010-02-23T03:34:07.339Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>AS400 Jobs: Do you have a job at the moment?</title><content type='html'>&lt;h1&gt;AS400 Jobs question&lt;/h1&gt;&lt;br /&gt;&lt;b&gt;Do you have an as400 job at the moment&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;The reason for me asking this question is because at the moment I dont have an &lt;b&gt;as400 job&lt;/b&gt;. Plus I came across this old as400 related jobs article on IT Knowledge Exchange asking the very similar question. They mention that it may be down the fact that its difficult looking for work on a system that is round about 20 years old, which the as400 is now.  &lt;br /&gt;&lt;br /&gt;http://itknowledgeexchange.techtarget.com/iseries/as400-jobs-are-you-looking-for-work/&lt;br /&gt;&lt;br /&gt;Plus companies are modernising their so-called 'legacy' as400 systems based on RPG to new and shiney windows and linux systems using java or .Net.  &lt;br /&gt;&lt;br /&gt;&lt;img src="http://upload.wikimedia.org/wikipedia/commons/c/c0/AS400.jpg" alt="as400 jobs"/&gt;&lt;br /&gt;&lt;br /&gt;So with that in mind, and the ever present now, credit crunch, it would appear that the job market for technicians with as400 skills maybe getting smaller and smaller. Although to balance that there are still a lot of companies that rely on their as400 for their business processes to run, almost without hiccup Given that, I still think we will see as400 jobs around for some time yet&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-7733964048194794122?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='AS400 Jobs: Do you have a job at the moment?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/7733964048194794122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-jobs-do-you-have-job-at-moment.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7733964048194794122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7733964048194794122'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/as400-jobs-do-you-have-job-at-moment.html' title='AS400 Jobs: Do you have a job at the moment?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4448960609378535026</id><published>2009-05-09T21:51:00.003+01:00</published><updated>2010-02-19T04:27:15.579Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>as400 LPAR CPU statistics and documentation tool for IBM Power systems servers</title><content type='html'>This tool produces historical CPU graphs of as400 LPAR's and shared CPU usage, physical  and logical config of managed systems/LPAR's and any changes in state and configuration&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ibm.com/developerworks/wikis/display/virtualization/lpar2rrd%20tool"&gt;http://www.ibm.com/developerworks/wikis/display/virtualization/lpar2rrd%20tool&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More as400 LPAR information to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4448960609378535026?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='as400 LPAR CPU statistics and documentation tool for IBM Power systems servers'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4448960609378535026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/lpar-cpu-statistics-and-documentation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4448960609378535026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4448960609378535026'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/lpar-cpu-statistics-and-documentation.html' title='as400 LPAR CPU statistics and documentation tool for IBM Power systems servers'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4706710476183081020</id><published>2009-05-09T21:44:00.008+01:00</published><updated>2010-02-19T04:14:36.758Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='free'/><category scheme='http://www.blogger.com/atom/ns#' term='software'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>Free AS400 &amp; iSeries Software Tools &amp; Utilities Downloads</title><content type='html'>&lt;b&gt;Lots of free AS400 and Iseries Tools and Utilities&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2009/05/lpar-cpu-statistics-and-documentation.html"&gt;LPAR CPU statistics and documentation tool for IBM Power systems servers&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Change Current User&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;This will allow you to change the current user that you are logged on with without logging off the as400 system first. This command uses the QSYGETPH API to verify the password entered and then uses the QWTSETP API to actually change the user that is currently signed on. This is very useful in making sure that a peticular program is always run as a certain user&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2009/05/free-i5-as400-rpg-utility-change.html"&gt;Change Current User&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Calculate Dates&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Calculate dates using RPG IV date fields. This is useful in determining the effect of different calculations on date fields. It will prompt you to enter a date and allow you to try different scenarios and see the results&lt;br /&gt;&lt;br /&gt;&lt;a href="http://as400blog.blogspot.com/2008/05/free-rpg-i5-as400-utility-calculate.html"&gt;Calculate Dates&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;More as400 tools and utilities to follow&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4706710476183081020?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Free AS400 &amp; iSeries Software Tools &amp; Utilities Downloads'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4706710476183081020/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/free-as400-iseries-software-tools.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4706710476183081020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4706710476183081020'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/free-as400-iseries-software-tools.html' title='Free AS400 &amp; iSeries Software Tools &amp; Utilities Downloads'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-7133380350252319951</id><published>2009-05-09T09:46:00.005+01:00</published><updated>2009-05-09T09:53:33.051+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='indexes'/><category scheme='http://www.blogger.com/atom/ns#' term='logicals'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><category scheme='http://www.blogger.com/atom/ns#' term='as400'/><title type='text'>The performance difference between a true SQL index on the as400 and a keyed logical index</title><content type='html'>Apparently there is a huge performance difference on the as400, that has existed since V4R2, between SQL indexes and DDS created logical files. The performance is so much better that it is worth converting all DDS logicals to SQL, even if they are only used by RPG programs&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The evolution of the as400 / iSeries / i5 has resulted in a mix of old and new technologies. Most notably&lt;br /&gt;are the methods used to create, populate and manipulate databases. Many iSeries/i5 application&lt;br /&gt;developers have embraced modern tools for creating front end masterpieces to their existing data;&lt;br /&gt;however the underlying foundation, the database itself, has been woefully neglected. Basically&lt;br /&gt;the existing databases were created using a tool known as DDS (Data Description Specification).&lt;br /&gt;All other Relational Database Management Systems (RDMS) use Structured Query Language, or&lt;br /&gt;SQL, to define the database.&lt;br /&gt;For many iSeries/i5 developers initial attempts in the use of SQL have resulted in unacceptable&lt;br /&gt;performance causing system administrators and/or Chief Information Officers to discourage its&lt;br /&gt;use. For others, the ease of use of SQL has made it the preferred tool for data creation and access.&lt;br /&gt;When these two groups come together the result is like a bad beer commercial. Shouts of “It’s&lt;br /&gt;great!” are hurled in response to yells of “Less fulfilling!”&lt;br /&gt;As IBM continues to enhance DB2 UDB for iSeries (e.g. the new and improved SQL Query&lt;br /&gt;Engine, more efficient data access methods, new database primitives, etc) the decision to use&lt;br /&gt;SQL over traditional methods will no longer be if, but when. In fact, many iSeries/i5 shops are&lt;br /&gt;developing all new applications using SQL. In addition, the use of SQL defined databases may&lt;br /&gt;result in improved throughput as a result in changes to the underlying architecture (more on this&lt;br /&gt;later).&lt;br /&gt;So all new SQL development will benefit from new database technology but what about the&lt;br /&gt;existing DDS defined databases that are still serving thousands of applications using Record&lt;br /&gt;Level Access (RLA) methods via High Level Language (HLL) read and write operations? Is there&lt;br /&gt;a way that these applications can take advantage of SQL database enhancements without a total&lt;br /&gt;rewrite?&lt;br /&gt;The answer is a resounding Yes! This is the basic premise of this article. In essence this article&lt;br /&gt;provides a high level overview of the madness behind the methods known as the Stage 1 DDS to&lt;br /&gt;DDL reengineering strategy detailed in the soon to be released Redbook "Modernizing iSeries&lt;br /&gt;Application Data Access - a Roadmap Cornerstone".&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Full PDF here - &lt;br /&gt;&lt;a href="http://www-03.ibm.com/servers/eserver/iseries/db2/pdf/Performance_DDS_SQL.pdf"&gt;as400 DDS and SQL Performance&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Good luck with your as400 logical file performance&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-7133380350252319951?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='The performance difference between a true SQL index on the as400 and a keyed logical index'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/7133380350252319951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/performance-difference-between-true-sql.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7133380350252319951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/7133380350252319951'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/performance-difference-between-true-sql.html' title='The performance difference between a true SQL index on the as400 and a keyed logical index'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5395315971426007173</id><published>2009-05-08T15:56:00.004+01:00</published><updated>2010-03-16T02:44:31.764Z</updated><category scheme='http://www.blogger.com/atom/ns#' term='used as400'/><title type='text'>Used as400s</title><content type='html'>&lt;b&gt;A list of vendors of Used AS400s&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;US.&lt;br /&gt;&lt;br /&gt;ISM - Used Iseries AS400, Custom build AS400 i5 servers parts Big inventory International dealer&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ismweb.com/"&gt;http://www.ismweb.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;XCC - Used IBM iSeries AS400, AS/400, AS 400 Server, Refurbished, New, Lease, IBM AS400 iSeries Dealer Resller&lt;br /&gt;&lt;br /&gt;&lt;a href="www.xcc.com/ibm/as400_iSeries.lasso"&gt;www.xcc.com/ibm/as400_iSeries.lasso&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;as400dealer - New and Used IBM i5 Servers (AS/400) - Used iSeries Servers · Used AS400 Servers · Refurbished iSeries Servers · Refurbished AS400 Servers&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.as400dealer.com/"&gt;http://www.as400dealer.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vibrant - Vibrant stocks a vast inventory of used and refurbished AS/400 servers, configuration, upgrades, peripherals and parts&lt;br /&gt;&lt;br /&gt;&lt;a href="www.vibrant.com/ibm-iseries/used-as400.ph"&gt;www.vibrant.com/ibm-iseries/used-as400.php&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Abacus - Used AS/400 and Used iSeries Servers&lt;br /&gt;&lt;br /&gt;&lt;a href="www.abacusllc.com/products/servers-ibm-iseries.asp"&gt;www.abacusllc.com/products/servers-ibm-iseries.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Penn Computer - Used IBM iSeries | Buy, Sell, Lease Rent&lt;br /&gt;&lt;br /&gt;&lt;a href="www.penncomputer.com/IBMiSeries/default.htm"&gt;www.penncomputer.com/IBMiSeries/default.htm&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Spectra - Used iSeries, used system i5 and used AS400 servers. 520, 550, 570, 595, 800, 700 and 600 Series&lt;br /&gt;&lt;br /&gt;&lt;a href="www.spectra.com/usedsystems/ibm/4/iseries.htm"&gt;www.spectra.com/usedsystems/ibm/4/iseries.htm&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Midand Info - New/Used iSeries Hardware, iSeries Systems, Upgrades&lt;br /&gt;Parts, Software &amp; Prof. Service&lt;br /&gt;&lt;br /&gt;&lt;a href="www.midlandinfosys.net"&gt;www.midlandinfosys.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;UK.&lt;br /&gt;&lt;br /&gt;SupaPrice - Used As 400 Sale, Save big on Used As 400.&lt;br /&gt;Used As 400 up to 62% off!&lt;br /&gt;&lt;br /&gt;&lt;a href="SupaPrice.co.uk/Used+As+400"&gt;SupaPrice.co.uk/Used+As+400&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Weycomms - IT Hardware Traders, Used IBM i-Series, p-Series&lt;br /&gt;&amp; x-Series Hardware&lt;br /&gt;&lt;br /&gt;&lt;a href="www.weycomms.co.uk"&gt;www.weycomms.co.uk&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Covenco - Iseries and System i, Power6 to legacy systems. Servers, disk, memory, in stock immed. ship&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.covenco.co.uk/home1.php?dirs=/iseries/Covenco-IBM-iSeries-main.html&amp;gclid=CJnPmbT-rJoCFQkEZgodcB_dbw"&gt;http://www.covenco.co.uk&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Bluechip - iSeries &amp; AS400 Systems, IBM iSeries Hardware Upgrades &amp; Sales from IBM Midrange Specialists&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bluechip.co.uk/services/hardware-sales-ad-hoc-services/ibm-sales-upgrades-for-system-i-iseries.html?gclid=CP6W1NP-rJoCFQienAodYWTEaw"&gt;http://www.bluechip.co.uk&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5395315971426007173?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Used as400s'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5395315971426007173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/used-as400s.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5395315971426007173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5395315971426007173'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/used-as400s.html' title='Used as400s'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-409319620101976643</id><published>2009-05-07T21:05:00.003+01:00</published><updated>2009-05-07T23:11:51.176+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='prestart'/><category scheme='http://www.blogger.com/atom/ns#' term='host'/><title type='text'>What is QZHQSSRV job?</title><content type='html'>On the as400, QZHQSSRV is one of the prestart jobs that will be running in the QUSRWRK subsystem. &lt;br /&gt;&lt;br /&gt;A prestart job is a batch job and will run on the server before a program on a remote system tries to connect with that server. Usually multiple prestart jobs of a particular type are configured to run. Prestart jobs are run to increase performance  of initiations and connections to a server. Host server functions, that use prestart job, use the sockets communications interface support&lt;br /&gt;&lt;br /&gt;The host servers are:&lt;br /&gt;&lt;br /&gt;Network print server &lt;br /&gt;Remote command and distributed program call server &lt;br /&gt;Central server &lt;br /&gt;Database server &lt;br /&gt;Secure database server &lt;br /&gt;File server &lt;br /&gt;Secure file server &lt;br /&gt;Data queue server &lt;br /&gt;Signon server&lt;br /&gt;&lt;br /&gt;These are the programs called when the prestart job is started for host server.&lt;br /&gt;&lt;br /&gt;Network Print                 QSYS/QNPSERVS&lt;br /&gt;Remote command and program call QSYS/QZRCSRVS&lt;br /&gt;Central                         QSYS/QZSCSRVS&lt;br /&gt;Database                 QSYS/QZDASOINIT&lt;br /&gt;Secure Database                 QSYS/QZDASSINIT&lt;br /&gt;File                         QSYS/QPWFSERVSO&lt;br /&gt;Secure File                 QSYS/QPWFSERVSS&lt;br /&gt;Data Queue                  QSYS/QZHQSSRV&lt;br /&gt;Signon                         QSYS/QZSOSIGN&lt;br /&gt;&lt;br /&gt;The prestart jobs usually take the name of the program that they call, so QZHQSSRV is a prestart job for a remote system to communicate with a data queue on the server.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-409319620101976643?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='What is QZHQSSRV job?'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/409319620101976643/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/what-is-qzhqssrv-job.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/409319620101976643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/409319620101976643'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/what-is-qzhqssrv-job.html' title='What is QZHQSSRV job?'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-3388929156052227339</id><published>2009-05-07T12:37:00.006+01:00</published><updated>2009-05-12T12:25:19.479+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='me'/><title type='text'>About Me</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_zNzyVDx8wOE/SgLJ46IJgBI/AAAAAAAAAQs/OQ4BHg1xqqM/s1600-h/IMG_4429.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_zNzyVDx8wOE/SgLJ46IJgBI/AAAAAAAAAQs/OQ4BHg1xqqM/s320/IMG_4429.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5333046888273379346" /&gt;&lt;/a&gt;&lt;br /&gt;Hi,&lt;br /&gt;&lt;br /&gt;Im Colin Williams, the 'Webmaster' of this blog. Im an as400 IT consultant (currently on a career break, not my choice, blame the credit crunch!) with 20 years experience of many aspects of as400 systems and development. Im based near London, but will work anywhere in the world if an obscene amount of money is offered (seriously)&lt;br /&gt;&lt;br /&gt;If you have any comments on this blog, or any suggestions, need an experienced as400 guy, or just need some counselling (apparently im a good listener), drop me an email...&lt;br /&gt;&lt;br /&gt;colinwilliams007 at yahoo.co.uk (antispam, you know what to do!)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-3388929156052227339?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='About Me'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/3388929156052227339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/about-me.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3388929156052227339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/3388929156052227339'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/about-me.html' title='About Me'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_zNzyVDx8wOE/SgLJ46IJgBI/AAAAAAAAAQs/OQ4BHg1xqqM/s72-c/IMG_4429.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-5488783406141459471</id><published>2009-05-07T02:59:00.002+01:00</published><updated>2009-05-07T03:02:46.854+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='business partners'/><title type='text'>System i | AS400 | Iseries Business Partners</title><content type='html'>System i | AS400 | Iseries modernization solutions&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bcdsoftware.com"&gt;http://www.bcdsoftware.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-5488783406141459471?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='System i | AS400 | Iseries Business Partners'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/5488783406141459471/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/system-i-as400-iseries-business.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5488783406141459471'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/5488783406141459471'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/system-i-as400-iseries-business.html' title='System i | AS400 | Iseries Business Partners'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2373803469053602718</id><published>2009-05-07T02:50:00.001+01:00</published><updated>2009-05-07T02:52:10.896+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><title type='text'>IBM System i Developer Road Atlas</title><content type='html'>&lt;blockquote&gt;The System i Developer Road Atlas illustrates all the possibilities for development activities; including modernization, new development and the inclusion of components which have already been created. The Road Atlas shows key activities required for developers from seemingly diverse backgrounds as RPG, Java and PHP to integrate components together creating on demand applications&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www-03.ibm.com/systems/i/resources/roadmap/"&gt;http://www-03.ibm.com/systems/i/resources/roadmap/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2373803469053602718?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM System i Developer Road Atlas'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2373803469053602718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-system-i-developer-road-atlas.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2373803469053602718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2373803469053602718'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-system-i-developer-road-atlas.html' title='IBM System i Developer Road Atlas'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2400917884290378210</id><published>2009-05-07T02:37:00.001+01:00</published><updated>2009-05-07T02:40:08.957+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='websphere'/><title type='text'>Websphere Application Server for Iseries</title><content type='html'>Version 7.0 is the latest release WebSphere Application Server on iseries and is supported on IBM i.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www-03.ibm.com/systems/i/software/websphere/index.html"&gt;http://www-03.ibm.com/systems/i/software/websphere/index.html&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2400917884290378210?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Websphere Application Server for Iseries'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2400917884290378210/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/websphere-application-server-for.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2400917884290378210'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2400917884290378210'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/websphere-application-server-for.html' title='Websphere Application Server for Iseries'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-8352889789631146820</id><published>2009-05-06T16:11:00.004+01:00</published><updated>2009-05-06T16:14:37.345+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.net'/><category scheme='http://www.blogger.com/atom/ns#' term='ibm i'/><title type='text'>Using the .Net toolset to develop desktop and Web-based applications for IBM i</title><content type='html'>Richard Schoen discusses using .Net to develop IBM i apps...&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;With a little education on how to use a technology like .NET to develop applications, a System i programmer can quickly write a graphical application on top of an existing System i solution. This adds a new user interface to important parts of an existing system or simply offers ease of access to existing ERP data from a Windows or Web-based inquiry&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ibmsystemsmag.com/ibmi/october07/trends/17571p1.aspx"&gt;http://www.ibmsystemsmag.com/ibmi/october07/trends/17571p1.aspx&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-8352889789631146820?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Using the .Net toolset to develop desktop and Web-based applications for IBM i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/8352889789631146820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-net-toolset-to-develop-desktop.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8352889789631146820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/8352889789631146820'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/using-net-toolset-to-develop-desktop.html' title='Using the .Net toolset to develop desktop and Web-based applications for IBM i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4801188683444886606</id><published>2009-05-06T15:18:00.004+01:00</published><updated>2009-05-06T15:23:06.410+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='storage'/><category scheme='http://www.blogger.com/atom/ns#' term='ibm'/><title type='text'>IBM is abandoning storage....</title><content type='html'>or at least they are not taking it seriously, according to this article by storage analyst Barry Burke...&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;In my book, when you trivialize the importance of ANY technology to the point of having your supplier announce GA and availability rather than doing it yourself, it means something. And when IBM's sales force is to this day telling prospects that flash SSDs are "unproven technology" and "not ready for the enterprise," I can only conclude that IBM is embarrassed to admit some huge limitation or inadequacy of their products when used with Flash&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;...the aging, decrepit DS8K is no longer a viable storage platform for the enterprise. Later this year, IBM will finally get around to upgrading the aging DS8K processors to the p6, but it won't be enough to catch up with the Symmetrix V-Max&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://thestorageanarchist.typepad.com/weblog/2009/05/2001-ibms-amazing-splash-dance-part-deux.html"&gt;http://thestorageanarchist.typepad.com/weblog/2009/05/2001-ibms-amazing-splash-dance-part-deux.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4801188683444886606?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='IBM is abandoning storage....'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4801188683444886606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-is-abandoning-storage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4801188683444886606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4801188683444886606'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/ibm-is-abandoning-storage.html' title='IBM is abandoning storage....'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4687719596234829254</id><published>2009-05-06T15:08:00.005+01:00</published><updated>2009-05-06T15:14:59.751+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='transform'/><category scheme='http://www.blogger.com/atom/ns#' term='web enable'/><title type='text'>LANSA beefs up as400 application modernistation options with aquisition of aXes</title><content type='html'>Lansa has purchased aXes as400 modernisation suite of products. The products are&lt;br /&gt;&lt;br /&gt;aXes Terminal Server provides Web enablement of 5250 applications with the automatic generation of a highly customizable graphical user interface (GUI). &lt;br /&gt;&lt;br /&gt;aXes Data Explorer Server provides an easy way to extract and then publish live DB2/400 data in a browser or to send query output to desktop applications like Microsoft Word and Excel. &lt;br /&gt;&lt;br /&gt;aXes Spool File Server provides point-and-click access to output queues and spool files, with print-ready documents available in PDF, XML, HTML, or text formats&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.axeslive.com/home.php"&gt;http://www.axeslive.com/home.php&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4687719596234829254?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='LANSA beefs up as400 application modernistation options with aquisition of aXes'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4687719596234829254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/lansa-beefs-up-as400-application.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4687719596234829254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4687719596234829254'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/lansa-beefs-up-as400-application.html' title='LANSA beefs up as400 application modernistation options with aquisition of aXes'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-2360583509828448885</id><published>2009-05-06T15:01:00.002+01:00</published><updated>2009-05-06T15:04:49.104+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='change control'/><title type='text'>Aldon Introduces a new Build and Release Management Product to IBM i</title><content type='html'>&lt;blockquote&gt;While version control tools give you the ability to manage software versioning through check-outs and check-ins, it can’t help you with the software build and release process.  Aldon’s Build Release Management solution gives you total control of the entire build release management process by taking advantage of the benefits that an application lifecycle management offering brings &lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.aldon.com/sol/brm/ov/"&gt;http://www.aldon.com/sol/brm/ov/&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-2360583509828448885?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Aldon Introduces a new Build and Release Management Product to IBM i'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/2360583509828448885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/aldon-introduces-new-build-and-release.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2360583509828448885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/2360583509828448885'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/aldon-introduces-new-build-and-release.html' title='Aldon Introduces a new Build and Release Management Product to IBM i'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-1627927044386872516</id><published>2009-05-06T14:33:00.002+01:00</published><updated>2009-05-06T14:39:09.360+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dates'/><category scheme='http://www.blogger.com/atom/ns#' term='api'/><title type='text'>Get Time to the Millisecond in ILE C on as400</title><content type='html'>Show examples of manipulating dates and time from ILE C using APIs CEELOCT for current time and CEEDATM for date time or timestamp formatting on as400&lt;br /&gt;&lt;br /&gt;&lt;a href="http://systeminetwork.com/article/get-time-millisecond-ile-c"&gt;http://systeminetwork.com/article/get-time-millisecond-ile-c&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-1627927044386872516?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='Get Time to the Millisecond in ILE C on as400'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/1627927044386872516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/get-time-to-millisecond-in-ile-c-on.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1627927044386872516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/1627927044386872516'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/get-time-to-millisecond-in-ile-c-on.html' title='Get Time to the Millisecond in ILE C on as400'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8943221.post-4972695259077754452</id><published>2009-05-06T08:54:00.004+01:00</published><updated>2009-05-06T14:23:55.101+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='emulators'/><category scheme='http://www.blogger.com/atom/ns#' term='5250'/><title type='text'>5250 Emulators</title><content type='html'>For easy access to IBM AS/400 (System i, iSeries) sessions, try one of these 5250 terminal emulators&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;LINUX 5250 Emulators&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Mocha Linux TN5250 (Shareware) MochaSoft&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mochasoft.dk/linux.html#tn5250" target="Midrange"&gt;http://www.mochasoft.dk/linux.html#tn5250&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8943221-4972695259077754452?l=as400blog.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://as400blog.blogspot.com/' title='5250 Emulators'/><link rel='replies' type='application/atom+xml' href='http://as400blog.blogspot.com/feeds/4972695259077754452/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://as400blog.blogspot.com/2009/05/5250-emulators.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4972695259077754452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8943221/posts/default/4972695259077754452'/><link rel='alternate' type='text/html' href='http://as400blog.blogspot.com/2009/05/5250-emulators.html' title='5250 Emulators'/><author><name>Col</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://bp0.blogger.com/_zNzyVDx8wOE/SGZU9Sk_w_I/AAAAAAAAABc/Gkpo91KEeNk/S220/me.jpg'/></author><thr:total>0</thr:total></entry></feed>
