Not only do AVR for .NET shared class members generate a lot of questions for us in ASNA tech support, but their misuse cause AVR for .NET programmers grief and consternation. This article takes a look at exactly what shared members are and when to use them.
This article shows how to add culture-specific decimal number input to your ASNA Visual RPG for .NET Windows apps.
The Windows Defender's feature called "Controlled folder access" can cause problems trying to create Web sites with ASNA Visual RPG and Visual Studio. This article shows how to resolve this issue.
CSS custom properties are essentially variables you can declare in your CSS. They can dramatically reduce redundancy and increase flexibility in your CSS files. Except for IE 11, all of the major browsers now fully support CSS custom properties. Let's take a closer look.
Many applications, both Windows and Web, need to connect to the Internet to send or receive data. ASNA Visual RPG Classic apps do not intrinsically have the ability to make HTTP requests. This can be a crippling drawback when you have a legacy enterprise app for which you now have the requirement to send and/or receive data from the Internet. There are still a few third-party COM controls around that can enable AVR to make HTTP requests, but these controls are often troublesome and customers report that some no longer work. This article shows how to extend AVR Classic with AVR for .NET to enable the AVR Classic app to fetch data Json data with an HTTP request. We'll first a look at the AVR for .NET class library project responsible for making the HTTP request to fetch the Json then we'll take a look at the AVR Classic app that consumes that .NET class library. This article provides a simple example of fetching Json. Things like user authentication and product-worthy error handling are omitted--but both can be added.
By default, most HTML elements don't display text that contains carriage returns and linefeed characters correctly. This article shows how to resolve that issue by applying a simple CSS property.
We've worked with several AVR Classic customers lately helping them resolve challenges with their legacy Classic apps. During this work, we've come to the opinion that integrating AVR for .NET with AVR Classic is not only a great way to solve AVR Classic-imposed challenges and limitations, but it's also a way to start replacing parts of your AVR Classic applications with AVR for .NET. Many AVR Classic applications are quite large and complex and rewriting them from the ground up isn't doable--at least quickly. But over time, incrementally replacing parts of them with AVR for .NET may be the key to clawing your way out of COM prison. Be sure to understand that this article isn't about launching .NET EXEs with AVR's OSExec operation. While you can achieve a modest level of interoperability with by launching an EXE with OSExec, you're still dealing with two distinct processes that don't really interoperate with each other. With this article's techniques, you'll have a single (started by AVR Classic), that uses the .NET binary just as it would an ActiveX control. You'll be able to call .NET methods, get results back from .NET functions, and read and write .NET properties. This article provides the keys for integrating AVR for .NET with AVR Classic.
When cutting and pasting data into Web pages, it's easy to paste smart quotes and other characters that won't later render well on IBM i green-screens. This article shows how to "cleanse" your HTML inputs before submitting them to the server.
The .NET command line is probably not used very frequently by AVR for .NET coders. But for those needing to achieve AVR for .NET to AVR Classic interoperability, it's a necessity. This article shows how to configure Visual Studio for easy .NET command line access.
This document introduces several of the unique and powerful features of ASNA Visual RPG for .NET (AVR). Whether you're a traditional RPG programmer with little or no experience with other languages, or a veteran VB/C# programmer, this document provides an overview of several of AVR's language concepts and syntactical details.
The ListView is a worthy alternative to the GridView control. With the ListView control, you are 100% in charge of the markup produced. This makes the ListView much better suited to pages where you need complete control over the markup, such as when you're using a CSS framwork like BootStrap. However, the ListView's model for determining row clicks is quite different from the GridView. This article shows how to determine what row and column got clicked with the ListView.
A very important consideration for AVR for .NET ASP.NET websites is managing IBM i jobs. This article discusses how to ensure that an AVR for .NET website doesn't create more IBM i jobs than necessary.