{"id":3613,"date":"2022-09-07T09:19:06","date_gmt":"2022-09-07T07:19:06","guid":{"rendered":"https:\/\/www.recordinformatica.it\/?page_id=3613"},"modified":"2025-07-31T10:50:58","modified_gmt":"2025-07-31T08:50:58","slug":"program-on-as-400_en","status":"publish","type":"page","link":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm","title":{"rendered":"Program on AS\/400"},"content":{"rendered":"<p>[vc_row el_class=&#8221;fake_breadcrumbs&#8221;][vc_column width=&#8221;1\/4&#8243;]<div class=\"widget-rotation\"><a href=\"https:\/\/www.recordinformatica.it\/en\/electronic-signature-graphic-in-business-documents_en.htm\" class=\"widget-item-link\" target=\"_blank\" rel=\"noopener\"><div class=\"widget-item\"><div class=\"widget-image\"><img decoding=\"async\" src=\"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2021\/07\/FirmaGrafica2.jpg\" alt=\"Graphic Sign\" \/><\/div><div class=\"widget-text\"><p><strong>Graphically sign<\/strong> documents created from your AS\/400 printouts. Print them out or create PDF documents with a first-level electronic signature using Validoc&#8217;s &#8220;<a href=\"https:\/\/www.recordinformatica.it\/en\/electronic-signature-graphic-in-business-documents_en.htm\" target=\"_blank\" rel=\"noopener\">Sign<\/a>&#8221; module.<\/p>\n<\/div><\/div><\/a><a href=\"https:\/\/www.recordinformatica.it\/en\/convert-as-400-prints-to-pdf_en.htm\" class=\"widget-item-link\" target=\"_blank\" rel=\"noopener\"><div class=\"widget-item\"><div class=\"widget-image\"><img decoding=\"async\" src=\"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2025\/07\/pdf-con-grafica.jpg\" alt=\"PDF creation\" \/><\/div><div class=\"widget-text\"><p>Create <strong>PDF<\/strong> of your AS\/400 ( iSeries &#8211; IBM i ) printouts with graphics using the Validoc <a href=\"https:\/\/www.recordinformatica.it\/en\/convert-as-400-prints-to-pdf_en.htm\" target=\"_blank\" rel=\"noopener\">PDF<\/a> module.<\/p>\n<\/div><\/div><\/a><\/div>[\/vc_column][vc_column width=&#8221;2\/3&#8243;][vc_column_text]<strong>Consultancy &gt;<\/strong> <a href=\"https:\/\/www.recordinformatica.it\/en\/what-is-as-400_en.htm\"><strong>AS\/400<\/strong><\/a> &gt; Programming on AS\/400[\/vc_column_text][vc_column_text]<\/p>\n<div id=\"destra\">\n<div id=\"attachment_4561\" style=\"width: 310px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-4561\" class=\"wp-image-4561 size-medium\" src=\"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg\" alt=\"RPG Programming Language\" width=\"300\" height=\"160\" srcset=\"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg 300w, https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG.jpg 477w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><p id=\"caption-attachment-4561\" class=\"wp-caption-text\">RPG Programming Language<\/p><\/div>\n<p>If you are a programmer and you are interested in learning how to program on the AS\/400 system, you should know that the main language is RPG.<\/p>\n<p>The &#8220;Report Program Generator&#8221; has evolved considerably since version 2, which was also used on the IBM &#8220;Sistemi 36&#8221; (another pre-era AS\/400 calculator).<\/p>\n<p>Over time it has gone through version III and IV. The latest version released is the &#8220;Free&#8221; version, that is without fixed format in the code queue that is much more convenient to use.<\/p>\n<p>However, it remains a procedural language without support at least natively, for graphic libraries but only for the character interface mentioned above. The GUI is built using Java, PHP or third-party tools.<\/p>\n<p>You can also program in Cobol and many other languages (Java, C, etc.) even if the application part with the business logic is almost always in RPG.<\/p>\n<p>RPG is made attractive by a huge legacy of applications written in this language.<\/p>\n<p>Strong is the use of SQL. Both as interactive executions for changes to the DB, integrated in programs or used in stored procedures.<\/p>\n<p>The DB2\/400 is the only usable database on the AS\/400. Extremely integrated with the operating system, so much so that it sometimes results in a single entity.<\/p>\n<p>DB2\/400 supports triggers, referential integrity, static or dynamically constructed logical views (indexes), and generally supports almost all of the operating mechanisms of modern databases.<\/p>\n<p>If you want to study programming in RPG at level IV, at the following link \u00a0<a href=\"http:\/\/www.neroni.it\/Scaricabili\/CorsoRpg.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">www.neroni.it\/Scaricabili\/CorsoRpg.pdf<\/a> you can find an open source RPG manual in Italian written and kindly offered by Mr. Claudio Neroni, IT consultant on AS\/400 systems.<\/p>\n<p>It also deals with issues related to the use of the AS\/400 system in general and the utilities supporting programming (video construction, prints, commands, etc.).<\/p>\n<p>On this our page you will find links to the main AS\/400 manuals for system management and, above all, programming: <a href=\"https:\/\/www.recordinformatica.it\/en\/as400-iseries-systemi-os400-i5os_manuali-htm.htm\" rel=\"noopener\">AS\/400 Manuals<\/a><\/p>\n<\/div>\n<p>[\/vc_column_text][\/vc_column][\/vc_row]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[vc_row el_class=&#8221;fake_breadcrumbs&#8221;][vc_column width=&#8221;1\/4&#8243;][\/vc_column][vc_column width=&#8221;2\/3&#8243;][vc_column_text]Consultancy &gt; AS\/400 &gt; Programming on AS\/400[\/vc_column_text][vc_column_text] If you are a programmer and you are interested in<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3613","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Program on AS\/400<\/title>\n<meta name=\"description\" content=\"How to program on AS\/400 system (iSeries - IBM i)\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Program on AS\/400\" \/>\n<meta property=\"og:description\" content=\"-1163\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm\" \/>\n<meta property=\"og:site_name\" content=\"Record Informatica\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-31T08:50:58+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"3\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm\",\"url\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm\",\"name\":\"Program on AS\\\/400\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.recordinformatica.it\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/RPG-300x160.jpg\",\"datePublished\":\"2022-09-07T07:19:06+00:00\",\"dateModified\":\"2025-07-31T08:50:58+00:00\",\"description\":\"How to program on AS\\\/400 system (iSeries - IBM i)\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm#primaryimage\",\"url\":\"https:\\\/\\\/www.recordinformatica.it\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/RPG-300x160.jpg\",\"contentUrl\":\"https:\\\/\\\/www.recordinformatica.it\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/RPG-300x160.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/program-on-as-400_en.htm#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.recordinformatica.it\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Program on AS\\\/400\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#website\",\"url\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/\",\"name\":\"Record Informatica\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#organization\",\"name\":\"Record Informatica\",\"url\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.recordinformatica.it\\\/wp-content\\\/uploads\\\/2023\\\/03\\\/logo_recordgrande_white_border_top_bottom-3.jpg\",\"contentUrl\":\"https:\\\/\\\/www.recordinformatica.it\\\/wp-content\\\/uploads\\\/2023\\\/03\\\/logo_recordgrande_white_border_top_bottom-3.jpg\",\"width\":568,\"height\":368,\"caption\":\"Record Informatica\"},\"image\":{\"@id\":\"https:\\\/\\\/www.recordinformatica.it\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Program on AS\/400","description":"How to program on AS\/400 system (iSeries - IBM i)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm","og_locale":"en_US","og_type":"article","og_title":"Program on AS\/400","og_description":"-1163","og_url":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm","og_site_name":"Record Informatica","article_modified_time":"2025-07-31T08:50:58+00:00","twitter_card":"summary_large_image","twitter_title":"3","twitter_image":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg","twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm","url":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm","name":"Program on AS\/400","isPartOf":{"@id":"https:\/\/www.recordinformatica.it\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm#primaryimage"},"image":{"@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm#primaryimage"},"thumbnailUrl":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg","datePublished":"2022-09-07T07:19:06+00:00","dateModified":"2025-07-31T08:50:58+00:00","description":"How to program on AS\/400 system (iSeries - IBM i)","breadcrumb":{"@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm#primaryimage","url":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg","contentUrl":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/02\/RPG-300x160.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.recordinformatica.it\/en\/program-on-as-400_en.htm#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.recordinformatica.it\/en\/"},{"@type":"ListItem","position":2,"name":"Program on AS\/400"}]},{"@type":"WebSite","@id":"https:\/\/www.recordinformatica.it\/it\/#website","url":"https:\/\/www.recordinformatica.it\/it\/","name":"Record Informatica","description":"","publisher":{"@id":"https:\/\/www.recordinformatica.it\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.recordinformatica.it\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.recordinformatica.it\/it\/#organization","name":"Record Informatica","url":"https:\/\/www.recordinformatica.it\/it\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.recordinformatica.it\/it\/#\/schema\/logo\/image\/","url":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/03\/logo_recordgrande_white_border_top_bottom-3.jpg","contentUrl":"https:\/\/www.recordinformatica.it\/wp-content\/uploads\/2023\/03\/logo_recordgrande_white_border_top_bottom-3.jpg","width":568,"height":368,"caption":"Record Informatica"},"image":{"@id":"https:\/\/www.recordinformatica.it\/it\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/pages\/3613","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/comments?post=3613"}],"version-history":[{"count":0,"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/pages\/3613\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.recordinformatica.it\/en\/wp-json\/wp\/v2\/media?parent=3613"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}