{"id":3496,"date":"2023-04-12T15:33:27","date_gmt":"2023-04-12T15:33:27","guid":{"rendered":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/"},"modified":"2026-01-20T16:13:56","modified_gmt":"2026-01-20T16:13:56","slug":"integrating-data-from-ftp-sites","status":"publish","type":"post","link":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/","title":{"rendered":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics?"},"content":{"rendered":"<p>In other articles I\u2019ve discussed the process of integrating data from various sources into IBM Planning Analytics. This time, I want to offer a simple strategy for automating the inflow of data \u201cdropped onto\u201d a <u>F<\/u>ile <u>T<\/u>ransfer <u>P<\/u>rotocol (or FTP) site. Since the <em>File Transfer Protocol<\/em> is a standard communication protocol commonly used for the transfer of data files from a source to a client, sooner or later you will come across a scenario where files may be sitting in a secured FTP folder waiting for you to download and consume.<\/p>\n<p><strong>Validating \u201cthe Drop\u201d<\/strong><\/p>\n<p>I always begin by using an FTP Client tool such as <a href=\"https:\/\/filezilla-project.org\/download.php?platform=win64\">FileZilla<\/a> to \u201cvalidate the drop site\u201d.\u00a0 With FileZilla, you enter the IP or Computer name of the host site, the required credentials and port number and click connect. This allows you to validate the information provided: host URL, authentication credentials (Username and Password) as well as the host\u2019s folder structure. You should go through the exercise of uploading and downloading a file from the location to make sure that you can access the site successfully, and files can be transferred to and from (the site) without affecting content or encountering performance degradation.<\/p>\n<p><strong>Automating with PowerShell<\/strong><\/p>\n<p>Since there currently is little support for FTP automation offered directly in Planning Analytics, we can use PowerShell. PowerShell is a <em>task automation and configuration management<\/em> program from Microsoft, consisting of a command-line shell and a associated scripting language. PowerShell is an obvious choice for automating the process of downloading files from an FTP site to a place where Planning Analytics can consume them and PowerShell can also perform any tasks required to move, reformat or otherwise prepare the data for loading, including supporting PGP encryption.<\/p>\n<p>If we commit to using PowerShell as a solution, than the <a href=\"https:\/\/learn.microsoft.com\/en-us\/powershell\/scripting\/windows-powershell\/ise\/introducing-the-windows-powershell-ise?view=powershell-7.3\"><strong>Windows PowerShell Integrated Scripting Environment<\/strong><\/a><strong> (ISE)<\/strong> (a host application for Windows PowerShell) is <em>my<\/em> scripting tool of choice. In this ISE, you can run commands and write, test, and debug scripts in a single Windows-based GUI (graphic user interface). To access the ISE, you click Start, select Windows PowerShell, and then click <em>Windows PowerShell ISE<\/em> (alternately, you can type powershell_ise.exe in any command shell or in the Run box).<\/p>\n<p><strong>Get Busy Scripting<\/strong><\/p>\n<p>We NEVER want to \u201chard code\u201d anything in any program or script, therefore, we\u2019ll build a script with the ability to accept <strong>runtime parameters<\/strong>. In this exercise I am going to store a username and password in a secure global cube (within Planning Analytics) and then pass those values into the script at runtime. In addition, I want to use this script to download any file (in a predetermine location) so I\u2019ll add a 3<sup>rd<\/sup> parameter for the filename that I want to download. PowerShell parameters are always enclosed in a param block defined with the param keyword, followed by opening and closing parentheses, so the top of our script will look like this:<\/p>\n<p>&nbsp;<\/p>\n<p>param(<\/p>\n<p>[Parameter()]<\/p>\n<p>[string]$username,<\/p>\n<p>[string]$password,<\/p>\n<p>[string]$filename<\/p>\n<p>)<\/p>\n<p><strong>Cheating a Bit<\/strong><\/p>\n<p>I said <em>never hard code<\/em>, but for this exercise I AM going to go against that and define 2 \u201chardcoded variables\u201d (hardcoded because I have a specific source\u00a0 and destination and \u201cvariable\u201d because I will use the filename parameter value to \u201cqualify\u201d it). \u00a0$url is the source (the URL and filename we want to download) and $dest is the target (where the file will be downloaded to):<\/p>\n<p># &#8212; URL and Destination<\/p>\n<p>$url = &#8220;https:\/\/jims.solidftp.scape.com\/in\/&#8221; + $filename<\/p>\n<p>$dest = &#8220;C:jimsftpdownloadsTestFiles&#8221; + $filename<\/p>\n<p><strong>Let\u2019s get to the Downloading!<\/strong><\/p>\n<p>With PowerShell, it\u2019s all about using its \u201clibrary\u201d of cmdlets. A <strong>cmdlet<\/strong> is a lightweight command that is used in the PowerShell environment (almost like a \u201cmini\u201d script or program invoked by a single line of code). The PowerShell runtime invokes these cmdlets \u201cwithin the context\u201d of automation scripts that are provided at the command line. The PowerShell runtime also invokes them programmatically through PowerShell APIs.<\/p>\n<p><strong>\u00a0<\/strong><\/p>\n<p>Windows PowerShell doesn&#8217;t have any cmdlets specifically designed to download Internet data, however, PowerShell can be object oriented, so we can use the <strong>New-Object<\/strong> cmdlet to create an object using the <strong>System.Net.WebClient<\/strong> class and expose common methods for sending and receiving data from any local, intranet, or Internet resource identified by a URI:<\/p>\n<p>&nbsp;<\/p>\n<p># &#8212; create an object to download file<\/p>\n<p>$web = New-Object System.Net.WebClient<\/p>\n<p>&nbsp;<\/p>\n<p>Note that in the script above the object is \u201cstored\u201d in the variable named $web. The next step is to set the objects <strong>Credentials property<\/strong> with the network credentials that will be sent to the host and used to authenticate our download request:<\/p>\n<p>&nbsp;<\/p>\n<p>$web.Credentials = new-object System.Net.NetworkCredential($username, $password)<\/p>\n<p>&nbsp;<\/p>\n<p>Finally, <strong>DownloadFile<\/strong> is the method that will invoke the actual process of downloading the file that we specified:<\/p>\n<p>&nbsp;<\/p>\n<p>$web.DownloadFile($url, $dest)<\/p>\n<p>Our \u201ccomplete\u201d script might look like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2593\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/1-300x114.png\" alt=\"\" width=\"771\" height=\"293\" \/><\/p>\n<p><strong>Testing<\/strong><\/p>\n<p>It is always important to take things \u201cin steps\u201d, meaning, <em>first<\/em> I used FileZilla to confirm that the URL and network credentials were correct and working. Now I will manually run the PowerShell script we just created and see if it can successfully download a file. To do this we can type into the console the following:<\/p>\n<p>.myposwerd.ps1 -username apptm1jim -password tH8Bg6ehtoNyfLD9vOV -filename TM1_Integration_Report_Output.csv<\/p>\n<p>This should execute our script passing it the 3 parameters we described earlier:-username, -password and -filename (a file named \u201cTM1_Integration_Report_Output.csv\u201d). It is assumed that the file exists on the FTP site and in the \u201c\/in\/\u201d folder.<\/p>\n<p>By default, PowerShell scripts are \u201cunsigned\u201d meaning they do not automatically have a <strong>digital signature<\/strong>. A \u201cdigital signature\u201d is a type of electronic signature that&#8217;s secure and can be authenticated, indicating that the script can be run on a system, safely. Since we are not publishing our script to multiple consumers, we can avoid the process of having to create a digital signature by setting a specific <strong>execution policy<\/strong> on the specific system that the script will be executed (running as an unsigned script). To run unsigned scripts, you must change the execution policy using the <strong>Set-ExecutionPolicy<\/strong> cmdlet. You may need to alter the specific execution policy based upon a particular client\u2019s security program or plan. Start out by running <strong>Get- ExecutionPolicy <\/strong>to see the current policies and scopes:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2594\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/Picture2-300x101.png\" alt=\"\" width=\"588\" height=\"198\" \/><\/p>\n<p><strong>Adding PGP Encryption<\/strong><\/p>\n<p>Along with <em>securing the FTP folder<\/em> (using a User and Password), the files coming and going in the folder should be encrypted. <strong>Pretty Good Privacy<\/strong> or \u201cPGP\u201d is an encryption program that provides cryptographic privacy and authentication for data communication. PGP is used for signing, encrypting, and decrypting texts, e-mails, files, directories, and whole disk partitions and to increase the security of e-mail communications. PGP adds a second layer of security to a solution and thankfully, PowerShell makes dealing with PGP quite easy.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Start with a Key<\/strong><\/p>\n<p>To implement PGP, a PGP key must be generated which you will use to sign and encrypt files. When you create a PGP key, a <em>keypair<\/em> (consisting of a public key and a private key) is generated. You can share the public key with anyone who wishes to send you encrypted files, but the private key must be known only to you and used to decrypt received files. You can use tools such as <a href=\"https:\/\/www.goanywhere.com\/products\/open-pgp-studio\/download\">GoAnywhere Open PGP studio<\/a> to create a PGP keypair or, like I did, use PowerShell commands available it modules such as <a href=\"https:\/\/www.powershellgallery.com\/packages\/PSPGP\/0.1.5#:~:text=PSPGP%20is%20a%20PowerShell%20module,folders%20and%20strings%20using%20PGP.\">PSPGP<\/a>, which is a PowerShell module that provides PGP functionality in PowerShell allowing encryption and decryption of files\/folders and strings using PG.<\/p>\n<p>&nbsp;<\/p>\n<p>Note: The PowerShell system is already available within the Windows operating system, and you probably already have many modules available (if you are not sure, at the PowerShell prompt, type <strong>Get-Module &#8211;<\/strong><strong>ListAvailable<\/strong> to see which modules are available for you to use). If a particular module is not available (such as PSPGP), you can install it by using the <strong>Get-InstalledModule<\/strong> cmdlet.<\/p>\n<p>&nbsp;<\/p>\n<p>You can use the <strong>New-PGPKey<\/strong> command in a PowerShell script to generate a PGP Key Pair (pick your own UserName and Password):<\/p>\n<p>&nbsp;<\/p>\n<p># &#8212; create a new PGP key<\/p>\n<p>New-PGPKey -FilePathPublic $PSScriptRootKeysPublicPGP.asc -FilePathPrivate $PSScriptRootKeysPrivatePGP.asc -UserName &#8217;69przemyslaw.klys&#8217; -Password &#8217;69ZielonaMila9!&#8217;<\/p>\n<p>&nbsp;<\/p>\n<p>Below is the key pair generated by the above script:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2595\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/Picture3-300x54.png\" alt=\"\" width=\"761\" height=\"137\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong>Decrypting with PGP<\/strong><\/p>\n<p>Once you have generated your key pair (and shared the Public key) you can use the Unprotect-PGP cmdlet to decrypt files. The following script demonstrates the decryption of a file (Encoded \u2013 is where the encrypted file resides and Decoded &#8211; is where the decrypted file will be written):<\/p>\n<p>&nbsp;<\/p>\n<p># &#8212; use PGP key to decrypt the file<\/p>\n<p>Unprotect-PGP -FilePathPrivate $PSScriptRootKeysPrivatePGP.asc -Password &#8217;69ZielonaMila9!&#8217; -FolderPath $PSScriptRootEncoded -OutputFolderPath $PSScriptRootDecoded<\/p>\n<p>&nbsp;<\/p>\n<p>A simple test result is shown below &#8211; before decryption:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2596\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/Picture4-300x210.png\" alt=\"\" width=\"532\" height=\"373\" \/><\/p>\n<p>And <em>after<\/em> decryption:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2597\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/Picture5-300x110.png\" alt=\"\" width=\"529\" height=\"194\" \/><\/p>\n<p><strong>TurboIntegrator<\/strong><\/p>\n<p>The last step (in this exercise) is to use a TurboIntegrator process to initiate the PowerShell script we wrote. If you are comfortable with Planning Analytics, it should make sense and be straight forward.<\/p>\n<p>&nbsp;<\/p>\n<p>The key points are:<\/p>\n<ul>\n<li>Never \u201chard code\u201d anything; especially usernames and passwords \u2013 place them in a secured \u201cglobal cube\u201d.<\/li>\n<li>Create a specific folder where you\u2019ll place this and any future developed PowerShell scripts and read this folder name and location from the Global cube.<\/li>\n<li>Use the variable values to create a command line string.<\/li>\n<li>Use Planning Analytics <a href=\"https:\/\/www.ibm.com\/docs\/en\/planning-analytics\/2.0.0?topic=pctf-executecommand\">ExecuteCommand<\/a> function to execute the command line string.<\/li>\n<\/ul>\n<p>Below is an example of a working TurboIntegrator script that meets the basic requirements:<\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2598\" src=\"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/Picture6-300x176.png\" alt=\"\" width=\"914\" height=\"536\" \/><\/p>\n<p>&nbsp;<\/p>\n<p><strong>It\u2019s a Wrap<\/strong><\/p>\n<p>I believe that these are all of the key pieces required to demonstrate a simple strategy of automating the integration of data from FTP Sites to IBM Planning Analytics (except of course a TurboIntegrator process to actually load a cube from the downloaded and decrypted CSV file and perhaps a chore to run everything on a schedule). Enjoy!<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In other articles I\u2019ve discussed the process of integrating data from various sources into IBM Planning Analytics. This time, I want to offer a simple strategy for automating the inflow of data \u201cdropped onto\u201d a File Transfer Protocol (or FTP) site. Since the File Transfer Protocol is a standard communication protocol commonly used for the&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[24],"tags":[38,36,51],"class_list":["post-3496","post","type-post","status-publish","format-standard","hentry","category-ibm","tag-how-tos","tag-planning-analytics","tag-planning-analytics-how-tos"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT\" \/>\n<meta property=\"og:description\" content=\"In other articles I\u2019ve discussed the process of integrating data from various sources into IBM Planning Analytics. This time, I want to offer a simple strategy for automating the inflow of data \u201cdropped onto\u201d a File Transfer Protocol (or FTP) site. Since the File Transfer Protocol is a standard communication protocol commonly used for the&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/\" \/>\n<meta property=\"og:site_name\" content=\"QueBIT\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-12T15:33:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-20T16:13:56+00:00\" \/>\n<meta name=\"author\" content=\"agoddard\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"agoddard\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/\"},\"author\":{\"name\":\"agoddard\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\"},\"headline\":\"How Do I Integrate Data from FTP Sites into IBM Planning Analytics?\",\"datePublished\":\"2023-04-12T15:33:27+00:00\",\"dateModified\":\"2026-01-20T16:13:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/\"},\"wordCount\":1659,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/1-300x114.png\",\"keywords\":[\"How To\u2019s\",\"Planning Analytics\",\"Planning Analytics How To's\"],\"articleSection\":[\"IBM\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/\",\"name\":\"How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/1-300x114.png\",\"datePublished\":\"2023-04-12T15:33:27+00:00\",\"dateModified\":\"2026-01-20T16:13:56+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#primaryimage\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/1-300x114.png\",\"contentUrl\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/1-300x114.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/integrating-data-from-ftp-sites\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Do I Integrate Data from FTP Sites into IBM Planning Analytics?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#website\",\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/\",\"name\":\"QueBIT\",\"description\":\"QueBIT\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/#\\\/schema\\\/person\\\/e52d72da0fd2f5f70d189343fe4f5084\",\"name\":\"agoddard\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g\",\"caption\":\"agoddard\"},\"sameAs\":[\"https:\\\/\\\/quebit.com\\\/askquebit\"],\"url\":\"https:\\\/\\\/quebit.com\\\/askquebit\\\/author\\\/agoddard\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/","og_locale":"en_US","og_type":"article","og_title":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT","og_description":"In other articles I\u2019ve discussed the process of integrating data from various sources into IBM Planning Analytics. This time, I want to offer a simple strategy for automating the inflow of data \u201cdropped onto\u201d a File Transfer Protocol (or FTP) site. Since the File Transfer Protocol is a standard communication protocol commonly used for the&hellip;","og_url":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/","og_site_name":"QueBIT","article_published_time":"2023-04-12T15:33:27+00:00","article_modified_time":"2026-01-20T16:13:56+00:00","author":"agoddard","twitter_card":"summary_large_image","twitter_misc":{"Written by":"agoddard","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#article","isPartOf":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/"},"author":{"name":"agoddard","@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084"},"headline":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics?","datePublished":"2023-04-12T15:33:27+00:00","dateModified":"2026-01-20T16:13:56+00:00","mainEntityOfPage":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/"},"wordCount":1659,"commentCount":0,"image":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#primaryimage"},"thumbnailUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/1-300x114.png","keywords":["How To\u2019s","Planning Analytics","Planning Analytics How To's"],"articleSection":["IBM"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/","url":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/","name":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics? - QueBIT","isPartOf":{"@id":"https:\/\/quebit.com\/askquebit\/#website"},"primaryImageOfPage":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#primaryimage"},"image":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#primaryimage"},"thumbnailUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/1-300x114.png","datePublished":"2023-04-12T15:33:27+00:00","dateModified":"2026-01-20T16:13:56+00:00","author":{"@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084"},"breadcrumb":{"@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#primaryimage","url":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/1-300x114.png","contentUrl":"https:\/\/quebit.com\/askquebit\/wp-content\/uploads\/2023\/02\/1-300x114.png"},{"@type":"BreadcrumbList","@id":"https:\/\/quebit.com\/askquebit\/integrating-data-from-ftp-sites\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/quebit.com\/askquebit\/"},{"@type":"ListItem","position":2,"name":"How Do I Integrate Data from FTP Sites into IBM Planning Analytics?"}]},{"@type":"WebSite","@id":"https:\/\/quebit.com\/askquebit\/#website","url":"https:\/\/quebit.com\/askquebit\/","name":"QueBIT","description":"QueBIT","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/quebit.com\/askquebit\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/quebit.com\/askquebit\/#\/schema\/person\/e52d72da0fd2f5f70d189343fe4f5084","name":"agoddard","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d817b364cff1d66116debde8d1c85e5e76eeece9c5ae731b19276a6040231455?s=96&d=mm&r=g","caption":"agoddard"},"sameAs":["https:\/\/quebit.com\/askquebit"],"url":"https:\/\/quebit.com\/askquebit\/author\/agoddard\/"}]}},"_links":{"self":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3496","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/comments?post=3496"}],"version-history":[{"count":2,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3496\/revisions"}],"predecessor-version":[{"id":5087,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/posts\/3496\/revisions\/5087"}],"wp:attachment":[{"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/media?parent=3496"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/categories?post=3496"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/quebit.com\/askquebit\/wp-json\/wp\/v2\/tags?post=3496"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}