content

  • 14 Nov

    I want to be able to Find in File text content. Is this possible ?

    Q: I want to be able to Find in File text content. Is this possible? For example, if the file contain a string in the file content, than do an operation. Is it possible in Limagito or we can only do something with the file name?

    In attachment, you will find folders and files example.

    –          If we find the string ST^832^ then we need to move the file in the folder « Price »

    –          If we find the string ST^810^ then we need to move the file in the folder « Invoice »

    So, the process should do this :

    –          Move the files !EDIFile.Exaple1 and !EDIFile.Example2 in folder « Price »

    –          Move the file ASSET.Example in folder « Invoice »

    A: Yes this is possible using a custom script which we create for you. I’ve added some screenshots to help you.

    • Source is a Windows folder:

    Limagito File Mover Windows Folder as Source

    • Open ‘Pascal Script’ Setup:

    Limagito File Mover Pascal Script option

    • Enable and add the following ‘On Destination’ Pascal Script:
    Var
      tmpFile: String;
      tmpList: TStringList;
    Const
      ctInvoiceSearch = 'ST^810^';
      ctPriceSearch = 'ST^832^';
      ctInvoiceSubDir = 'Invoice';
      ctPriceSubDir = 'Price';
    Begin
      psVSA := '';
      psExitCode:= 0;
      // ... add your code here
      tmpFile := psFilePath + psFileName;
      tmpList := TStringList.Create;
      Try
        Try
          tmpList.LoadFromFile(tmpFile);
          // Check Invoice
          If pos(ctInvoiceSearch, tmpList.Text) <> 0 Then
          Begin
            psVSA := ctInvoiceSubDir;
            psExitCode := 1;
            psLogWrite(1, '', 'Destination SubDir: ' + ctInvoiceSubDir + ' for ' +tmpFile);
          End;
          // Check Price
          If pos(ctPriceSearch, tmpList.Text) <> 0 Then
          Begin
            psVSA := ctPriceSubDir;
            psExitCode := 1;
            psLogWrite(1, '', 'Destination SubDir: ' + ctPriceSubDir + ' for ' + tmpFile);
          End;
          // Nothing was Found
          If psVSA = '' Then
          Begin
            psLogWrite(1, '', 'Destination SubDir Unknown for ' + tmpFile);
          End;
        Except
          psLogWrite(1, '', 'Error loading ' + tmpFile);
        End;
      Finally
        tmpList.Free;
      End;
    End.

    Limagito File Mover On Destination Pascal Script

    • Set Function to ‘Move Files’:

    Limagito File Mover Function Setup

    • Add ‘WIN’ as Destination

    Limagito File Mover Destination Selection

    • Select your Destination Directory:

    Limagito File Mover WIN as Destination Setup

    • Adjust the default ‘Create Subdir, option’ to:  %VSA\%SFS

    The reason you need to change this is because we’ want to use information from the previous Pascal Script to select the correct Subdirectory. In this example it will be ‘Price’ or ‘Invoice’.

    Limagito File Mover Destination Sub Directory Setup

    • RunTime Log Result:

    Limagito File Mover RunTime Log

    #FileTransfer

    If you need any info about this ‘Find in File text content’ question, please let us know.

    Best regards,

    Limagito Team

  • 09 Jul

    List of filename parts to move in a text file with Limagito File Mover

    Q: Is it possible to have a list of filename parts in a text file and use this to move any files whose name matches the whole filename or part file name in a directory? I’ve had a look on the blog but I think that is only for 1 file using a part filename.

    A: In version v2021.7.9.0 we added a new option to achieve this. We added some screenshots to get you started.

    1. Windows Folder as Source. This folder will contain all files. We’ll filter them using information from a seperate text file.

    Limagito File Mover Source Setup

    Our Source folder contains 244 files:

    Limagito File Mover Source Files

    2.Next, please open the Rule Parameters option of this Rule.

    Limagito File Mover Rule Parameters

    Select the text file containing the filename parts we’ll use to filter the files we want to copy. We selected ‘On Rule Begin’ as Load File Mode, so the content of this text will will be reloaded on each Rule Begin. We also enabled ‘Reload only when file content changes’ to prevent unnecessary loading of this file.

    Limagito File Mover File Content Setup

    Content of the text file we’ll use to filter the files we want to copy, it contains parts of filenames.

    Limagito File Mover File Parts as Content Filter

    3. Open the File Filter setup and select ‘File Contents > Include’ Tab. Enable the new option called ‘Add wildcards to File Content Entries in search’.

    When enabled wildcards will be added to each entry of the file content (in memory) during the search.
    i.e.
    Suppose file name found in source folder would be: test.pdf
    And the include FileContent would contain: test
    With this option enabled the file would be picked up because we will check test.pdf with *test*

    Limagito File Mover File Filter Setup

    4. As Destination we also added a Windows Folder:

    Limagito File Mover Destination Setup

    5. RunTime Log Result. Of  the original 244 files in the Source folder, 216 were copied due to the File Content Filter.

    Limagito File Mover RunTime Log Result

    #FileTransfer

    If you need any info about this new ‘List of Filename parts’ option, please let us know.

    Best regards,

    Limagito Team

    By Limagito Filters , ,
  • 20 Mar

    Rule Parameters – File Contents Option

    In version v11.103.20.0 we’ve added the File Contents option. With this option you can load the contents of a ‘text’ file and put this into a user parameter (%FCA – %FCE). This parameter can be used throughout the application.  You can choose how often you want te reload the contents of this file

    • On Application Startup
    • On Rule Begin
    • On Destination

    You can also use replacement parameters in the setup of the Filename you want to load.

    GUI.FileContents

    Secondly we’ve added a File Contents Filter option (File Filter Setup Form). So this way you can include/exclude files that exists in the File Contents of an external file. The contents of this external file will decide if a file will be picked up or not by our File Mover.

    GUI.FileFilter.FileContents

    Regards,

    Limagito Team