• Solutions
    • FERC XBRL Reporting
    • FDTA Financial Reporting
    • SEC Compliance
    • Windows Clipboard Management
    • Legato Scripting
  • Products
    • GoFiler Suite
    • XBRLworks
    • SEC Exhibit Explorer
    • SEC Extractor
    • Clipboard Scout
    • Legato
  • Education
    • Training
    • SEC and EDGAR Compliance
    • Legato Developers
  • Blog
  • Support
  • Skip to blog entries
  • Skip to archive page
  • Skip to right sidebar

Friday, September 21. 2018

LDC #103: Bringing Data Together

If you’ve ever needed to merge data files from different sources, you know how infuriating the process can be. Not all systems produce the same formats and sometimes fields don’t match properly. Instead of dealing with these issues manually in Excel or another spreadsheet program, let's use Legato.

Continue reading "LDC #103: Bringing Data Together" »
Posted by
David Theis
in Development at 15:35

Friday, August 10. 2018

LDC #97: Creating a Filing Calendar

Everyone in the EDGAR industry has experienced the customer who wants to know what the filing deadline is. For most companies the deadlines are easily found using a search engine. But what happens when your customer has an unusual fiscal year end? You can scramble to figure it out or you can just plug numbers into this week’s blog script does all the date calculations for you.

Continue reading "LDC #97: Creating a Filing Calendar" »
Posted by
David Theis
in Development at 14:37

Friday, July 13. 2018

LDC #93: Managing Memory in Legato

For this week’s blog we are going to shift from our usual discussions of what you can do with Legato to instead discuss how to make efficient Legato code. Like many scripting languages, in Legato you as the programmer typically do not need to worry about memory as the language takes care of a lot of it behind the scenes. That being said, you shouldn’t always ignore memory considerations when you write scripts. Doing so may result in a bad user experience or, even worse, unexpected failures. In this blog we will discuss some of the common pitfalls and how to avoid them.


Continue reading "LDC #93: Managing Memory in Legato" »
Posted by
David Theis
in Development at 09:42

Friday, June 15. 2018

LDC #89: Automating Other Applications Through Legato Part 2

A few weeks back I wrote a blog about automating Internet Explorer using OLE and Legato. In that blog, I mentioned we would be adding more OLE automation capabilities as newer versions of GoFiler and Legato were released. Now that version 4.22c of the GoFiler line of products is out, the increased OLE automation functionality of Legato is available. Today I will discuss how to use it and give a small example of what it can do.

Continue reading "LDC #89: Automating Other Applications Through..." »
Posted by
David Theis
in Development at 16:24

Friday, May 18. 2018

LDC #85: Math Functions in Legato

For this week’s blog we are going to create a simple calculator using Legato. Legato offers a wide variety of math functions that we can use to program the calculator. Before we get started coding, let’s think about the parts of the script we will need. First there will need to be a user interface. In our case, a dialog works perfectly. Secondly, we need to have a way to store operands, and a floating point number is good choice here. If we use only an integer the user cannot do decimal math. Finally, we will need to have operation processing. For this we will use Legato’s math functions. To begin I am going to set up the basics of the dialog, and we can add the processing together.

Continue reading "LDC #85: Math Functions in Legato" »
Posted by
David Theis
in Development at 16:58

Friday, April 20. 2018

LDC #81: Automating Other Applications Through Legato

This week we released version 4.22b of the GoFiler line of products, and with the release came new Legato functions to control Internet Explorer through OLE. Note that in future releases of Legato we will be adding further OLE functionality. The concepts used in this blog can be applied to any other OLE automation project.

Continue reading "LDC #81: Automating Other Applications Through..." »
Posted by
David Theis
in Development at 13:13

Friday, March 23. 2018

LDC #77: Hash It Out

This week we are going to discuss hashing. Simply put, a hashing function takes arbitrary sized data and maps it to fixed size in a deterministic manner. Therefore, when given the same input, the same result is generated. Ideally, a hash function would be 1-1, as in for every input a unique output is given. This is also known as an injective function. In reality, though, that’s not possible since the amount of data being input can be many times larger than the output. So instead hashing algorithms aim to be uniform, which is to say they use the entire output space equally. This means that the chances of two inputs generating the same hash are lower given the size of the output hash.

Continue reading "LDC #77: Hash It Out" »
Posted by
David Theis
in Development at 15:47

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 -..." »
Posted by
David Theis
in Development at 15:28

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" »
Posted by
David Theis
in Development at 16:31

Friday, December 08. 2017

LDC #62: Too Many Links and Not Enough Time

If you have ever wanted to download a bunch of HTML files from a website, you either need to do it manually (yuck!) or find some browser extension to help you along. Today we can offer a third option: using Legato. Since Legato can parse HTML files, you can quickly make a script that reads a website and decides what links to follow and which ones to ignore. Many browser extensions only let you filter by type of file, but with Legato the sky is the limit.

Continue reading "LDC #62: Too Many Links and Not Enough Time" »
Posted by
David Theis
in Development at 17:27

Friday, November 24. 2017

LDC #60: Messy Code? No problem!

Sometimes HTML code can be hard to read. While this isn’t an issue for editors and viewers that work with the rendered results, it can be a problem when advanced editing needs to happen. For example, a client sent over an HTML file that looks nice in the browser but it contains coding errors. When you go into the code to fix the errors, it’s hard to make the necessary changes because of problems like poor spacing.


Continue reading "LDC #60: Messy Code? No problem!" »
Posted by
David Theis
in Development at 14:23

Friday, August 04. 2017

LDC #46: Persistence... Do you have what it takes?

For the most part, scripts are used to make things easier for the user. Why search and replace in HTML code to fix a common problem when you can write a script that does it for you? This reduces the chances of human error as the script runs in a predictable fashion. These quick operations usually just take input and produce some output, but what do you do when you want a script to guide a user through a process? Do you let the user stop in the middle of the process? If so, does your script remember the user’s position so they can pick up where they left off? This week we are going to discuss state persistence.

Continue reading "LDC #46: Persistence... Do you have what it takes?" »
Posted by
David Theis
in Development at 11:19

Friday, March 24. 2017

LDC #27: Automatically Changing the EDGAR Preferences Part 2

Welcome back! This is part two of a series of blog posts involving a script to automatically change EDGAR preferences. You do not need to read the first blog post to understand most of the concepts of this post but it is recommended.

Continue reading "LDC #27: Automatically Changing the EDGAR..." »
Posted by
David Theis
in Development at 11:29

Friday, March 17. 2017

LDC #26: Automatically Changing the EDGAR Preferences Part 1

This blog is the first part of a two part series. This first part will discuss how to change the EDGAR Preferences in Legato and show an example script to change the Filing Agent credentials automatically when a project is opened. The second part will show how to secure the script to prevent users from accessing any private information needed by the script. Be advised that the script in this first part is usable as-is, but the second part adds crucial security to prevent users from reading the agent credentials.

Continue reading "LDC #26: Automatically Changing the EDGAR..." »
Posted by
David Theis
in Development at 14:39

Friday, January 20. 2017

Legato Developers Corner #18: Regular Expressions and Legato

In this blog we will discuss regular expressions and how you can employ them in your Legato scripts to add robust field validation as well as patterned string replacements. Regular expressions are a powerful tool that can be used in many languages so the concepts here can apply to things outside the scope of Legato. There are a few different “flavors” of regular expressions, but Legato uses the ECMAScript standard (very similar to Perl). If you already have a good understanding of regular expressions, you may wish to skip to the “Using Regular Expression in Legato” section.

Continue reading "Legato Developers Corner #18: Regular..." »
Posted by
David Theis
in Development at 13:31
« previous page   (Page 2 of 3, totaling 31 entries) next page »

Quicksearch

Categories

  • XML Accounting
  • XML AICPA News
  • XML FASB News
  • XML GASB News
  • XML IASB News
  • XML Development
  • XML Events
  • XML FERC
  • XML eForms News
  • XML FERC Filing Help
  • XML Filing Technology
  • XML Information Technology
  • XML Investor Education
  • XML MSRB
  • XML EMMA News
  • XML FDTA
  • XML MSRB Filing Help
  • XML Novaworks News
  • XML GoFiler Online Updates
  • XML GoFiler Updates
  • XML XBRLworks Updates
  • XML SEC
  • XML Corporation Finance
  • XML DERA
  • XML EDGAR News
  • XML Investment Management
  • XML SEC Filing Help
  • XML XBRL
  • XML Data Quality Committee
  • XML GRIP Taxonomy
  • XML IFRS Taxonomy
  • XML US GAAP Taxonomy

Calendar

Back May '25 Forward
Mo Tu We Th Fr Sa Su
Friday, May 16. 2025
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

Feeds

  • XML
Sign Up Now
Get SEC news articles and blog posts delivered monthly to your inbox!
Based on the s9y Bulletproof template framework

Compliance

  • FERC
  • EDGAR
  • EMMA

Software

  • GoFiler Suite
  • SEC Exhibit Explorer
  • SEC Extractor
  • XBRLworks
  • Legato Scripting

Company

  • About Novaworks
  • News
  • Site Map
  • Support

Follow Us:

  • LinkedIn
  • YouTube
  • RSS
  • Newsletter
  • © 2024 Novaworks, LLC
  • Privacy
  • Terms of Use
  • Trademarks and Patents
  • Contact Us