Need to have a user login, get some settings, and then direct them to confirm information? You need a dialog box. To create and use dialog boxes, you need some basic information to get started. This article will introduce dialog boxes and teach you the fundamentals about using them.
Continue reading "LDC #76: Introduction to Dialog Boxes" »Friday, March 16. 2018
LDC #76: Introduction to Dialog Boxes
Monday, March 12. 2018
SEC Releases EDGAR 18.1
On March 12, 2018, EDGAR Release 18.1 was released by the Securities and Exchange Commission. This release introduces new form types SF-1MEF and 486BXT and contains various changes and corrections to other forms.
Continue reading "SEC Releases EDGAR 18.1" »Friday, March 09. 2018
LDC #75: Automatic Creation of Previous Versions
One common task when working on an HTML document in GoFiler is to save different versions of the file. Every time a copy is sent out for review, users can do a save as operation, and save a new copy of the file with a different version number. GoFiler by default allows you to create backup copies of the file (.bak files) whenever you press the save button, but that’s often too many backups, and they don’t represent true versions. The example script in this blog post then attempts to automate the process of creating different versions of files. This script will trigger when the user presses the “To Browser” button on an HTML file, and ask if the user wants to create a previous version folder of this file. If the user presses “Yes”, the script makes a new folder called “Revisions”, puts a folder stamped with the version number, date, and time into it, and copies all the HTML and images out of your folder into this previous version folder.
Continue reading "LDC #75: Automatic Creation of Previous Versions" »
Wednesday, March 07. 2018
XBRL US Releases Taxonomy Approval Metrics and Process for Public Review
On March 6th, the XBRL US Domain Steering Committee, approved and posted a new XBRL US reference document for a 30-day review period, the Taxonomy Approval Metrics & Process (TAM).
Continue reading "XBRL US Releases Taxonomy Approval Metrics and..." »Friday, March 02. 2018
LDC #74: Removing That Pesky S From HTTPS
This week we’re going to talk about another client requested feature. Many EDGAR HTML documents end up referencing previously filed documents on the SEC’s EDGAR system. These documents are located at “https://www.sec.gov/Archives/edgar/data/[document reference]”. Recently the SEC has migrated to only HTTPS, the secure hypertext protocol, and will redirect any requests for HTTP to HTTPS. However, the EDGAR system will still only accept links that reference “http://www.sec.gov/[etc]”. This causes some extra work if you are merely copying the link from a browser that is accessing the document on the EDGAR system, as the link will be copied as HTTPS. Today, we’re going to write a simple script that hooks into the validate function and lets you know if you have any HTTPS references as well as offer to fix them.
Continue reading "LDC #74: Removing That Pesky S From HTTPS" »Friday, February 23. 2018
LDC #73: Running in the Background Part 2 - Synchronizing Tasks
During my last blog I discussed using background scripts. This week I will elaborate more on synchronizing background scripts and their data. If you haven’t read the previous blog don’t worry, you will be able to follow along. However, this blog does require at least a basic understanding of threading. The first part used a single background thread to track user activity within the application. A background thread is used to allow the user to continue to work in parallel to our script. Another way to use background scripts is to take a task and process it in parallel. Our script this week is an example of this.
Continue reading "LDC #73: Running in the Background Part 2 -..." »Friday, February 16. 2018
LDC #72: Get Crack'n - Working with URIs
The technical term for a web address is a Uniform Resource Identifier or URI. The contents of a URI can be very simple, such as ‘www.gofiler.online’, or very complex. A URL, the common name for a web page is actually a Uniform Resource Locator, which is a component of a larger URI. From within a Legato script one may find the need to either build a query or perhaps take one apart. In this post we will explore how URIs work and how to work with them within Legato.
Continue reading "LDC #72: Get Crack'n - Working with URIs" »Tuesday, February 13. 2018
SEC Issues Notice to Forms N-CEN and N-PORT Filers
On February 12th, the SEC released a notice to N-CEN and N-PORT filers to remind them of the temporary final rule which requires funds in larger fund groups (for example, fund groups with $1 billion or more in net assets) to maintain in their records the information that is mandated to be included in Form N-PORT in lieu of filing this form via EDGAR. The temporary final rule applies until April 1, 2019. Of key importance, the information the funds in larger fund groups maintain in their records will be subject to examination by the Commission. New Forms N-PORT and N-CEN were adopted by the SEC on October 13th, 2016 in an effort to enhance transparency and modernize reporting requirements for registered investment companies.
Continue reading "SEC Issues Notice to Forms N-CEN and N-PORT Filers" »Friday, February 09. 2018
LDC #71: Validating With The XBRL Object
XBRL can be a challenging topic to tackle. There are a lot of rules to learn for it, and with 14,000+ elements in the US:GAAP taxonomy, it doesn’t look like it’s going to get simpler any time soon. Fortunately, using GoFiler and Legato, we can add some functionality to make things a little easier.
Continue reading "LDC #71: Validating With The XBRL Object" »
Friday, February 02. 2018
LDC #70: Removing All Selected Hyperlinks
This week we are going to take a look at another client request to be able to remove multiple hyperlinks at the same time. In GoFiler there is a Remove Hyperlink function that will find where the caret currently is and if it is within a hyperlink it will remove the link. If the caret is located before or within an anchor/bookmark tag, the function will remove the anchor instead. However, if you have any text selected the tool gives the user a popup box and does not remove anything. So today we’re going to look at a simple script to hook into the Remove Hyperlink function, check if the user has text highlighted, and if so, remove all hyperlinks and bookmarks that we find in the highlighted section.
Continue reading "LDC #70: Removing All Selected Hyperlinks" »SEC Introduces Diversity Assessment Report
On January 25th, the SEC’s Office of Minority and Women Inclusion (OMWI) introduced its Diversity Assessment Report for Entities Regulated by the SEC, which is designed to help regulated entities conduct voluntary self-assessments of diversity policies and practices.
Continue reading "SEC Introduces Diversity Assessment Report" »Friday, January 26. 2018
LDC #69: Running in the Background
Sometimes when developing we want our program to process items continually. This can be a fairly simple concept: the script sits in a loop and constantly does what we need it to until there are no items to process. Then our program is finished. If we want to run more items, we need to start the script again. As you can see, this could be a tedious, laborious, and potentially inefficient system.
Continue reading "LDC #69: Running in the Background" »Monday, January 22. 2018
SEC Releases Registration Fee Estimator 1.2
The SEC’s Office of Financial Management Filing Fees announced the release of the web-based Registration Fee Estimator 1.2. Included in this release are all effective fee-bearing form types.
Continue reading "SEC Releases Registration Fee Estimator 1.2" »Friday, January 19. 2018
LDC #68: Application Shutdown Script
Way back in LDC #39, we discussed the file “ApplicationInitialize.ls” and how any script functions in it are run at application startup. With GoFiler 4.21b’s release on January 16, 2018, we’ve added support for a similar file, “ApplicationShutdown.ls”. As the name suggests, this file is called when GoFiler shuts down. This is a pretty powerful feature because it lets you do things to “clean up” your environment if you’ve modified it with other scripts or if you want to return the system to a desired state after using the application.
Continue reading "LDC #68: Application Shutdown Script" »
Friday, January 12. 2018
LDC #67: Legato Program Design Best Practices
In past blog entries I’ve written, the topic is often about simple scripts. It’s covered a couple hundred lines of code, and the script usually handles a single function. This means that every script that’s been covered so far has been relatively simplistic in structure, with no more than 10 or so separate functions. With so little code, a script can still be easily maintainable even if no thought is given to how it’s put together. The design of the application is less important in these cases. However, what if you want to do a larger project? What if your script is going to include multiple UI screens and integrate with multiple systems? This is where you would want to pay some attention to design and apply some software design practices to the script to ensure that you get the best possible result. The blog post this week will not contain an example of the script but will rather discuss how we can apply some software engineering principles to Legato design to avoid common pitfalls.
Continue reading "LDC #67: Legato Program Design Best Practices" »