Task Factory

This is not the latest version of Task Factory available.

  • 1
  • 2
  • 3

2016.4.5 | Updated: 03 Nov 2016



Downloads of v 2016.4.5:


Software Author(s):

  • Pragmatic Works Software

  • 1
  • 2
  • 3
Task Factory 2016.4.5

This is not the latest version of Task Factory available.

  • 1
  • 2
  • 3

All Checks are Passing

3 Passing Tests

Validation Testing Passed

Verification Testing Passed


Scan Testing Successful:

No detections found in any package files

Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Task Factory, run the following command from the command line or from PowerShell:


To upgrade Task Factory, run the following command from the command line or from PowerShell:


To uninstall Task Factory, run the following command from the command line or from PowerShell:


Deployment Method:

📝 NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)

2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade taskfactory -y --source="'INTERNAL REPO URL'" --version="'2016.4.5'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade taskfactory -y --source="'INTERNAL REPO URL'" --version="'2016.4.5'" 

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Install taskfactory
    name: taskfactory
    version: '2016.4.5'
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.

chocolatey_package 'taskfactory' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '2016.4.5'

See docs at https://docs.chef.io/resource_chocolatey_package.html.

cChocoPackageInstaller taskfactory
    Name     = "taskfactory"
    Version  = "2016.4.5"
    Source   = "INTERNAL REPO URL"

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.

package { 'taskfactory':
  ensure   => '2016.4.5',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.

4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

This package was approved by moderator gep13 on 07 Nov 2016.


Task Factory

Task Factory offers over 45 essential, high-performance components and tasks for SSIS that eliminate the need for programming. Task Factory includes a 14-day free trial or enter your license key to access the full featured SSIS tasks and components.

"Using the Salesforce Source and Destination alone was worth the purchase of Task Factory." - Satisfied Task Factory User

Task Factory Highlights


Allows you to pull information using SSIS from platforms such as Hadoop, SharePoint, Salesforce, Facebook, Twitter and much more.


Increase productivity and decrease development time by eliminating the need to program custom tasks using our efficient components.


Task Factory components are optimized to run much faster than the native SSIS components.

$ErrorActionPreference = 'Stop';

$packageName= 'taskfactory'
$toolsDir   = "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
$url        = 'http://download.pragmaticworks.com/release/2016.4/TaskFactory_2016.4.5.1103.exe'

$packageArgs = @{
  packageName   = $packageName
  unzipLocation = $toolsDir
  fileType      = 'EXE'
  url           = $url

  silentArgs    = "/quiet /norestart"
  validExitCodes= @(0, 3010, 1641)

  softwareName  = 'task-factory*'
  checksum = 'E12015E9FBB3CCFDA75D6945FB37B11DD6A1FBBB3FA8AB0E0DE2A9946B35BD85'
  checksumType = 'sha256'
  checksumType64 = 'sha256'

Install-ChocolateyPackage @packageArgs
$ErrorActionPreference = 'Stop';

$packageName = 'taskfactory'
$softwareName = 'Task Factory*'
$installerType = 'MSI'

$silentArgs = '/quiet /norestart'
$validExitCodes = @(0, 3010, 1605, 1614, 1641)

$uninstalled = $false
$local_key     = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*'
$machine_key   = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*'
$machine_key6432 = 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*'

$key = Get-ItemProperty -Path @($machine_key6432,$machine_key, $local_key) `
                        -ErrorAction SilentlyContinue `
         | ? { $_.DisplayName -like "$softwareName" }

if ($key.Count -eq 1) {
  $key | % { 
    $file = "$($_.UninstallString)"

    if ($installerType -eq 'MSI') {
      $silentArgs = "$($_.PSChildName) $silentArgs"

      $file = ''

    Uninstall-ChocolateyPackage -PackageName $packageName `
                                -FileType $installerType `
                                -SilentArgs "$silentArgs" `
                                -ValidExitCodes $validExitCodes `
                                -File "$file"
} elseif ($key.Count -eq 0) {
  Write-Warning "$packageName has already been uninstalled by other means."
} elseif ($key.Count -gt 1) {
  Write-Warning "$key.Count matches found!"
  Write-Warning "To prevent accidental data loss, no programs will be uninstalled."
  Write-Warning "Please alert package maintainer the following keys were matched:"
  $key | % {Write-Warning "- $_.DisplayName"}

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
Task Factory 2018.2.3.412-beta 236 Thursday, April 12, 2018 Exempted
Task Factory 2018.2.2.302-beta 242 Friday, March 2, 2018 Exempted
Task Factory 2018.1.4.208 274 Thursday, February 8, 2018 Approved
Task Factory 2018.1.4.129-beta 283 Monday, January 29, 2018 Exempted
Task Factory 2018.1.3.122-beta 247 Monday, January 22, 2018 Exempted
Task Factory 2018.1.2.1206-beta 265 Wednesday, December 6, 2017 Approved
Task Factory 2018.1.1.1030-beta 293 Monday, October 30, 2017 Approved
Task Factory 2017.4.6.1107 308 Tuesday, November 7, 2017 Approved

Task Factory version 2016.4.5

New Features

4012: File Properties Task compressed UI description should indicate NTFS compression
  • Updated the File Properties Task description for compressed files to clarify the use of NTFS compression.
6627: Added before and after scripts to Fact Destination, Upsert Destination and Oracle Destination
  • Added Before and After Scripts to Upsert Destination. Oracle Upsert Destination and Fact Table Destination. The before script is used to execute a sql statement before each buffer is processed. The after script is used to execute a sql statement after each buffer has been sent to the destination.
6654: Created FileGateway Source
  • Create a filegateway source based on the filegateway task that will separate the valid and invalid rows into success and error output
6685: Excel Source
  • Excel Source uses openxml to read an excel worksheet, sending the rows into a data flow
6688: Excel Connection Manager
  • New excel connection manager for use with the Task Factory Excel Source and Destination
6691: Excel Destination
  • Excel Destination supports writing data flows into excel files using the openxml format
6693: Refactor Task Factory help doc control flow items
  • Refactor the Task Factory help documentation control flow items to ensure they are up to date and easier readability.
6759: Added Support for TLS 1.1 and 1.2 To Rest Connections
  • HI Team, Per request we are adding this as a backlog item for consideration. Currently the Rest Source does not use the TLS 1.2 protocol that is required by the recent Salesforce changes. Our client Tristan Lewis of Collaborative Consulting is accessing a custom SalesForce instance within SalesForce. This access requires the use of the Rest Source and not the typical Salesforce Source provided.
6794: Task Factory - Rest Source - Addition of Namspacing
  • Added the ability to define namespaces for xml queries in both the unpack data transform and the rest source
7344: OAuth 1 Connection Manager to REST Source
  • This can be used to connect to endpoints where OAUTH1 is needed to make rest calls.
7381: Added "Pause Between Round Trips" option to Rest Source, Marketo Source and Marketo Destination
  • A client is experiencing the following issue. After discussing the inquiry, development requested a PBI for the inquiry below: • The Marketo API limits 100 calls in 20 seconds. Each call can return 300 records at a time. • We have around 92000 records to be extracted however the process fails after 30000 records. Is there a way to limit the number of records being read by TF Marketo source? It can help us overcome this problem.
  • Find out if configurable on Marketo
7382: Include 'Rebuild temp table indexes' option in Oracle Upsert Destination
  • This new option gives the ability to rebuild the temp table index after each buffer.
  • This resolves an issue where some Oracle environments may return an 'ORA-26026' error when using the Oracle Upsert Destination.
7388: Added Style / Formatting To Excel Destination Columns
  • Added support for adding style to columns. The styling is based on microsoft excel formatting and all formatting can be customized based on Excel formats.

Updated Features

7341: Error Output Description now uses properties and inputs


4988: Uninstalling Task Factory with Workbench installed removes Workbench dependencies from the GAC
5501: Int64 Variable Values not available for auditing in the SCD Transform
5520: Advanced Derived Column throws "Illegal Characters in Path" error when using the FIleWriteAllByte function
6063: SalesForce connection manager throws "Proxy 407 Authentication Error" when using a proxy that doesn't use basic authentication
6064: Hash transform updates order when selecting and removing input column(s)
6184: TF Sharepoint Destination Column Mismatch between versions.
6202: TF Upsert Destination - Unable to contain spaces in table name
6203: TF Fact Table Destination unable to use table with Spacing in the table name
6216: Using "Deploy Package" option in 2015 data tools throws VS_IsCorrupt error with Advanced Aggregator
6220: Excel Refresh Task - task completes successfully even if the data connections are not refreshed successfully.
6255: TF SalesForce Source cannot run in Parallel
6785: SalesForce Source throws "XML Document Error" for Contact and Account objects
6830: Fact Table Destination fails to create temporary table when the same column exists in the source, lookup and destination table
6831: Fixed Error in XML Transform Where Child Elements Weren't Being Written When Mapped
7342: The Rest Source OAuth 2 Token Getter throws 'Browser No Longer Supported' when getting tokens
7355: MS SQL 2016 CU1 update throws error "Could not load file or assembly 'PragmaticWorks.Common&'
7356: Within Fact Table Destination, multiple equality lookups on a dimension table changes to the same source column
7362: Fixed Issue Where Salesforce Destination passes name of Lookup column twice when used as External ID
7374: Email Source doesn't save variable selection when removing selected variable
7375: Dimension Merge SCD does not open in VS 2008 when using TF Version 2016.3.7
7380: Salesforce Source fails to return data when multiple objects are referenced
7395: Pack Data Transform hangs when no rows are passed to the component
7406: Upsert Destination throws error when creating temporary tables based on table names which include blank spaces
7806: SalesForce Destination throws "Unable to cast object of type 'System.Int64' to type 'System.Byte[]'.". error when using bulk mode
7836: SalesForce Destination throws 'Object not set to an instance of an object' error when using Bulk or Bulk Zip mode in combination with the 'Wait for Bulk Results' option

This package has no dependencies.

Discussion for the Task Factory Package

Ground Rules:

  • This discussion is only about Task Factory and the Task Factory package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Task Factory, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus