TaskSculpta - A Windows task action automation tool with a difference.

Above is a screenshot of TaskSculpta.

Download TaskSculpta here

Version 1.0.10 • Portable • Windows

↓ Download TaskSculpta

TaskSculpta - Introduction

TaskSculpta is a tool I created some time ago to automate the release of my utilities to this website. I also use it for many other things. I've basically put the same user interface from my other recent new tool TaskFlexa.


TaskSculpta is kind of like a visual form of batch files that you can see the flow of the task actions. You don't need to learn and code just familiarize yourself with the Task Actions list.


This tool is perfect for technical and semi technical Windows users who want to automate processes, integration or just make regular tasks simpler. You do not need programming knowledge to use TaskSculpta but if you are a software, database or web developer you can use it in conjunction with Python or VBScripts. You can also use it to launch you're own console application and monitor the success of fail status of that application.


You can associate a related file or a URL to each task if you wish. The file or URL can then be opened from the selected task.


Multiple task scripts can be opened on separate tabs. The TaskSculpta files have a .TSA file extension.


To use TaskSculpta just create a local folder and put TaskSculpta into it. TaskSculpta is portable like my other tools so it does not require an installation and can therefore be put onto a memory stick to be use between machines.


What TaskSculpta can be used for...

  • Creating software release scripts.
  • Running console applications with parameters and capturing the output.
  • Reading and editing text based files.
  • Copying and managing files.
  • Executing Python scripts, receiving return value and capturing the output.
  • Executing VBScripts, receiving return value and capturing output.
  • Making FTP connections and file transfers.
  • Connection to databases using ADO and performing database operations.
  • Connecting directly to SQLite Databases and performing database operations
  • Executing CMD prompt commands and capturing the output.
  • User prompts and information capture.
  • Performing checks and getting system information.
  • Systems integration and database migration.

TaskSculpta - Job Actions List

  • MessageBox - Shows a message box with text and or variable
  • CreateVariable - Create a variable for use is most task action properties input and outputs
  • CreateVarBatch - Create multiple variables in one action. It allows you to go back and add new variables easily
  • CreateListVariable- Create an empty list that can be populated by actions
  • DoesFileExist - Checks a specified file exists. Fails if it doesn't exist
  • FileCopy- Copies a specified file to a specified folder
  • CreateZipFile - Create a specified Zip file
  • CreateFolder - Create a specified folder
  • DoesFolderExist - Checks a specified folder exists. Fails if it does not exist.
  • OpenFolder - Open specified folder in Windows Explorer
  • CopyFolder - Copies a specified folder to a specified path.
  • FTPConnect - Make basic FTP Server Connection
  • FTPChangeDir - Change remote FTP folder. Requires FTPConnect.
  • FTPUpload - Upload file to FTP server. Requires FTPConnect.
  • FTPDownload - Download file from FTP server. Requires FTPConnect.
  • FTPDisconnect - Disconnect FTP server connection. Requires FTPConnect.
  • InputVariable - Input value to variable
  • ExecuteProgram - Execute a specified program with parameters
  • EditXMLFile - Edit a specified XML file branch
  • OpenFileDialog - Open file dialog, returns filename to variable
  • SelectFolderDialog - Select folder dialog, returns folder path to variable
  • DeleteFile - Delete a specified file
  • YesOrNoBox - Yes or No dialog box
  • Comment - Non action comment. Useful for putting in notes on the script.
  • OutputMessage - Send a string or variable to the Output tab
  • ADOConnect - Make ADO database connection
  • ADOTablesToList - ADO DB Table names to list variable. Requires ADOConnect.
  • ADOSelectToList - ADO SQL Select result to list variable. Requires ADOConnect.
  • ADOTableToCSV - ADO Table export to CSV File. Requires ADOConnect.
  • AccessRepComp - Access database repair and compact
  • ADOUpdateSQL - ADO Update/Insert/Alter/Delete SQL Statements. Requires ADOConnect.
  • PythonScript - Execute a Python Script with parameters and get result
  • VBScript - Execute a Visual Basic Script with parameters and get result
  • Beep - Audio sound alert
  • ClearOutput - Clear output window
  • OpenURL - Open a URL in the default web browser
  • OpenFile - Open a file with it's associated application
  • CreateTextFile - Creates a new text file in a specified folder
  • SetVariable - Set variable value
  • PopulateList - Populate a specified list from a static list of strings
  • OutputList - Output list contents to the output panel
  • OutVariables - Output created variables
  • GetDateTime - Get Date / Time using specified format
  • GetWinVer - Get Windows Version info to a variable
  • GetFileVer - Get file version number to a variable
  • GetUsername - Get User name to a variable
  • GetCompName - Get Computer name to a variable
  • Inbetween - Get substring in between two string tags
  • Section - Set a section header that you can jump to
  • JumpEqual - Jump to specified section if variable equals given value
  • Terminate - Terminate script at current location. This can be used to end a section after a jump
  • CMDCommand - Run CMD Prompt commands such as mkdir, ipconfig, set etc
  • SendUDPText - Send text to a UDP port and IP Address
  • GetCPUCores - Gets the number of CPU Cores. This is needed as some software charge per core.
  • INIGetValue - Get value from an item in a section of a specified INI File
  • ListLoad - Load a text file into a list variable
  • ListSave - Save list variable content to a specified text file
  • ListLinesReplace - Search and replace text tokens within lines in a list variable
  • Directory - Get list of files from a specified folder to a list variable
  • INISetValue - Write a value to a section item in an INI file, Useful for persisting data outside of the scripts
  • SetUserEnvVar - Create and write a value to a User system environment variable
  • GetUserEnvVar - Read a value from a User system environment variable and assign it to a script variable
  • XMLGetValue - Get value from a specified branch in a XML file
  • SQLiteConnect - Connect and open an SQLite database
  • SQliteTablesToList - Retrieve a list of tables from SQLite and put in a list variable
  • SQLiteUpdate - Perform and Update/Insert/Delete SQL statement on an SQLite Database
  • SQLiteSelectToList - Perform an SQL select statement on an SQLite database and put the results in a list variable

Understanding TaskSculpta Scripts

The scripts are basically a list of actions with properties. They run from top to bottom naturally. From line 1 to whatever is your last line number. So you have to ensure they are in the correct order. When you add a new task action it will be added to the bottom of the list. So you need to add the items that need to be done before other items first.


For example you need to add FTPConnect before you add FTPUpload or ADOConnect before ADOUpdateSQL etc. You also need to add CreateVariable or CreateListVariable for you add any action that will use them in their properties.


If you do forget something that needs to run before your current actions you can always add it and then move it up. To move an item up - right click on it in the script list and select 'Move Up' this will move it one item up. Repeat until it's in the right place.


If the numbers become out of sync or duplicated select 'Renumber' from the main tool bar or from the same right click menu.

Tip.

If you are using lots of variables it's a good idea to use CreateVarBatch. This action allows you to create multiple variables in one line. So it should be the first item in your script. For more informations on variables see Understanding Variables and Lists.


Understanding Variables and Lists

It's important to understand variables because they are the way information, settings and values are passed between different actions. Any software engineer, web developer or scientist should have not difficulty with the concept.

TaskSculpta's variable actions


There are different types of variables used in TaskSculpta.


Standard Variables

Variables created using CreateVariable or CreateVarBatch are basic variant variables. They can be text or numbers. To get information out of the variable it must be enclosed with the % symbols. IE %myvar% For example in the MessageBox property you can specify text with a variable like this 'This is the inputted value: %myvar%'


List Variables

ListVariables are the same but it's a list of them as one variable. They are used specifically for actions that use lists.


Built in variable constants

TaskSculpta has it's own build in variables that a preset at run time, such as...

  • $Date$
  • $Time$
  • $DateTime$
  • $MachineName$
  • $ScriptPath$
  • $ScriptFolder$
  • $DayOfWeek$
  • $DayOfWeekNo$
  • $DayOfWeek$
  • $Month$
  • $Year$

These can be used in actions such as MessageBox IE 'The date is: $date$' or outputted to the Output tab for debugging.

More built in variables will be added in future releases

Note: Variables are not case sensitive so $DATE$ is the same as $date$


Important: Variables are created and destroyed during the running of the script. Values do not remain in the script for the next time they run. If you want to store a variable value you can save it to a file such as INI, XML or Text.

Windows User Variables

If you do want to store a value for next time or pass / share a variable value between mulitiple scripts you can use Window's User variables.


You can setup these variables in Windows via the following screen.


Windows System andUser Environment Variables dialog

This screen can now also be reached via TaskSculpta's Tools menu.


The Window's User variables can get set and retrieved vai the following actions... GetUserEnvVar and SetUserEnvVar


Because these variable values are store in Windows they can be passed to different scripts or used to persist values between script runs.

TaskSculpta does not currently support the Windows System Variables but this might change in future releases

If you have a particular variable requirement, let me know.


Feedback on TaskSculpta

This is the beta version of this new tool so expect bugs. If you do get an unexpected error message then contact me and I'll try and fix it as soon as possible. I also have lots of new features planned for this tool so if you would like to see a particular feature let me know so that I can prioritize it, if it's already on my list.


As TaskSculpta is a new tool I would appreciate feedback. Let me know if you get any unexpected errors or a feature doesn't work correctly. I've got lots of new task actions in progress for TaskSculpta so it would be good to here what kind of things would be useful. Just send an email. Contact