The SEC recently updated the requirements for what information should be included on a number of the cover pages for their forms. GoFiler already has templates for a lot of common forms like the 8-K, 10-Q, and 10-K, but I had an idea that would eventually make creating these cover pages even easier than they already are by putting the power of Legato to work. The current templates simply create a blank cover page with empty areas to enter data in the Page View edit window. My script will prompt the user to provide the information in a simple form when they create the document and automatically place that data on the cover page.Continue reading "LDC #138: Using Legato to Ease the Creation of..." »
Friday, May 31. 2019
Friday, May 17. 2019
One of the most important features of GoFiler is the ability to take Microsoft Office documents and turn them into EDGAR compliant documents that can be filed to the SEC. While conversion is easy to do manually in GoFiler, there is a function in Legato that can add a crucial step into an automated set of steps that can help make setting up filings a breeze. Today I will go in-depth on this function: ConvertFile.Continue reading "LDC #136: Using Legato to Automate Document..." »
Friday, April 12. 2019
It’s time to finish up our full script for our Section 16 data scraper. In the first three parts of this series we completed a base script that would go out to the SEC’s website, download all of the filings from a particular CIK, cache all of the Section 16 filings, find all of the reported transactions, put those transactions into a CSV file, and then read all of those transactions and figure out which of those transactions are current holdings. This week we are going to finish up by creating a dialog and adding our script functionality into the dialog.
Continue reading "LDC #131: Building a Section 16 Data Scraper,..." »
Friday, March 29. 2019
It’s time to finish up our base script for our Section 16 data scraper. In the first two parts of this series we started a script that would go out to the SEC’s website, download all of the filings from a particular CIK, cache all of the Section 16 filings, find all of the reported transactions, and put those transactions into a CSV file. This week we are going to finish up the base functionality by reading through all of the transactions and finding the current holdings. Additionally we are going to perform a large amount of refactoring as well as add in the functionality to look at reported holdings.
Continue reading "LDC #129: Building a Section 16 Data Scraper,..." »
Friday, February 08. 2019
A few weeks ago we started building a Section 16 Data Scraper with the intention of a user being able to enter a CIK and Legato downloading all of the CIK’s Section 16 filings, putting the data together into a spreadsheet, and then being able to start a Section 16 filing by using that data as an entry point. At the end of the last post we had a script that would go out and download all of a singular CIK’s filings. It would also cache any filings it saw so that we were only downloading each individual filing once. This week we are going to continue onward and code a system to scrape useful data out of the filings and put it together into a CSV file.Continue reading "LDC #122: Building a Section 16 Data Scraper,..." »
Friday, January 04. 2019
If you are not familiar with the term Section 16, Section 16 is a section of the Securities Exchange Act of 1934. In fact, it is section 16 of the act. Section 16 is a way to attempt to mitigate insider trading at companies. It states that any person who is a director of the company, an officer of the company, or a 10% or more beneficial owner, directly or indirectly, they must file Forms 3, 4, and 5. These forms report the level of equity interests whenever a significant change occurs. The terms that you will see referenced here are reporting owner, who is the person of interest here, and issuer, who is the company that in which the reporting owner has equity.
Continue reading "LDC #117: Building a Section 16 Data Scraper,..." »
Friday, November 16. 2018
About a year ago I wrote a blog with the basics of how logs work with GoFiler and Legato. At the end I mentioned that in a future blog post we would talk more about what you can do with log objects. Today we are going to do just that. This blog assumes that you have read the previous blog and understand the basics of the log object.
Continue reading "LDC #111: Back To The Log" »
Friday, October 19. 2018
If you are anything like me, you may like looking in the past to see where you have been, which will hopefully allow you to figure out where you are going in the future. The more that I immerse myself in programming, the more documentation that I end up creating, just in order to know where I have been and what I have done before. As I program, I like to create documentation as I go along. It makes the process easier in the long run. Sometimes, however, I find myself having to pick up a project and having to create documentation from the start. It would be easier if someone had been keeping records all along, but if I have to know where I’ve been, I need to go through the whole process from the beginning.
Continue reading "LDC #107: All Our Filings In a Row" »
Friday, September 28. 2018
This week I want to go over a short script that I’ve written recently in order to help automate some of the tasks I have picked up around the office. Some of these tasks involve moving around files and folders on the network. I got tired of manually copying and pasting folders, so I wrote a script to help make moving large amounts of files and folders easier. There’s plenty of ways that this script could be made more in-depth, but this is a practical example of a way to make your life a little bit easier.Continue reading "LDC #104: Copy All the Things - An Example of..." »
Friday, August 17. 2018
Language directives allow you to change the code the programming language sees when it runs. We’ve talked a little bit about directives before, but today I will take a look at a subset of directives: conditionals. Conditionals allow a programmer to add or remove sections of code based on the existence of other directives. This means that it’s easy to build larger suites of code while allowing sections of code to be taken out without causing errors during runtime.
Continue reading "LDC #98: Conditionals, If You Want Me To" »
Friday, July 20. 2018
Legato is an extremely powerful tool that allows you take control of GoFiler by helping you to automate tasks and giving you new features. In addition to Legato, GoFiler also includes a command line API, allowing you to perform some tasks without fully opening GoFiler. You can combine these features together to have GoFiler run Legato scripts from the command line interface. This means that your possibilities are actually endless for what you can accomplish. Today we are going to discuss extending your control over GoFiler by using the Windows command line to communicate directly with Legato, allowing you to write scripts that can span multiple computers.
Continue reading "LDC #94: Taking Command Of GoFiler" »
Friday, June 22. 2018
If you’re a long time reader of the developers corner, you may remember that last April I talked about using collaboration tasks in GoFiler through Legato. I shared a short script that read any tasks attached to a project upon opening a project and had Legato post the tasks in the Information View. Today I would like to present a modification to the script while introducing the email function. This script will also require a basic understanding of how HTML is formed and how CSS style data is stored in HTML.
Continue reading "LDC #90: Emailing Collaboration Tasks" »
Friday, May 25. 2018
Computers are amazing at creating things like photos, videos, papers, books, Powerpoint presentations, and the ultimate combination of all of the above: Grumpy Cat memes. An essential but often invisible part of computers is the storage space where all of this stuff goes: hard drives, network drives, and other physical storage space. These things are required to make your computer work the way it should, but they do a very good job at not calling attention to themselves. However, knowing that storage spaces exist and how you can interact with them can help you later on when you want to create programs and scripts that require certain types of storage to be available.
Continue reading "LDC #86: Uncovering the Storage Vault" »
Friday, April 27. 2018
A few weeks ago we talked about what the clipboard object is and how you can get information off of the clipboard using Legato. This week we’re going to talk about putting information onto the clipboard using Legato by modifying one of our previous scripts.Continue reading "LDC #82: A Second Snap of the Clipboard" »
Friday, March 30. 2018
Today we’re going to talk about one of the most commonly used but least commonly understood features of your computer: the clipboard. Everyone who regularly uses a computer regularly knows how much of a time-saver using copy and paste can be, and the value only goes up the more you use it. As a programmer, the amount of time that I save by moving code around can’t even be measured, and I’m sure I’m not alone when I say that. However, the inner workings of the clipboard are often times misunderstood. Today I will explain what the clipboard is and how to interact with it using Legato.Continue reading "LDC #78: A Snapshot of the Clipboard" »