Pascal Script

  • 20 Apr

    How to export all rules to CSV with column name, source and destination

    Is there a way to export all Limagito rules to CSV or Excel with the column of name, source and destination?

    In a recent version of Limagito File Mover we added the following Pascal Script function to achieve this:

    Function psExportRuleDataAsCSV(Const aFile, aData, aDelimiter: String): String;

    aFile = Output Csv file, e.g. ‘C:\Temp\RuleList.csv’
    aData = a ; seperated list of items you want to add ( When empty string we’ll use ‘1;2;3;4’ )
    1 = RuleID
    2 = DisplayName
    3 = Source
    4 = Destination
    5 = Rule Status (version v2024.9.7.0 and up)

    • 0 = Unknown
    • 1 = Scanning Disabled
    • 2 = Rule in Hold
    • 11 = Delete Function: Enabled
    • 12 = Delete Function: Disabled
    • 13 = Delete Function: Thread(s) Terminating
    • 14 = Delete Function: Thread(s) Running
    • 15 = Delete Function: Error as Info Status
    • 21 = Move Function: Enabled
    • 22= Move Function: Disabled
    • 23 = Move Function: Thread(s) Terminating
    • 24 = Move Function: Thread(s) Running
    • 25 = Move Function: Error as Info Status
    • 31 = Copy Function: Enabled
    • 32 = Copy Function: Disabled
    • 33 = Copy Function: Thread(s) Terminating
    • 34 = Copy Function: Thread(s) Running
    • 35 = Copy Function: Error as Info Status

    6 = GroupName (version v2024.10.15.0 and up)
    7 = Information
    8 = RuleSchedule (version v2024.10.15.0 and up)
    9 = GlobalSchedule (version v2024.10.15.0 and up)
    20 = RuleLogFile (version v2024.10.15.0 and up)
    21 = RuleLogFileName (version v2024.10.15.0 and up)
    22 = RuleLogFilePath (version v2024.10.15.0 and up)
    23 = GlobalLogFile (version v2024.10.15.0 and up)
    24 = GlobalLogFileName (version v2024.10.15.0 and up)
    25 = GlobalLogFilePath (version v2024.10.15.0 and up)

     

    aDelimiter = csv delimiter used in the csv outputfile

     

    • Setup is easy, you’ll only need to add our ‘Pascal Script’ option as Source

    limagito file mover pascal script as source

    • Do not forget to adjust the ‘ctOutputCsv’ const:
      • Please add the following script: link

    limagito file mover export all rules to CSV

    • This is all you need to do, just enable and trigger the Rule now
    • Output Csv file content:

    RuleID,DisplayName,Source,Destination
    1,UNZIP Files Mike,[WIN]C:\Test\Out_Zip\,ID1[ZIP]C:\Test\Out_Zip\Out\
    2,WIN > Google Cloud Storage,[WIN]C:\Test\In\,ID2[GCLOUD]storage.googleapis.com/limagito/test
    3,GCloud > WIN,[GCLOUD]storage.googleapis.com/limagito/Test,ID1[WIN]C:\Test\Out\GCloud\

    If you need any help with our new ‘export all rules to CSV’ feature, please let us know. If you need more fields, please let us know.

    Best Regards,

    Limagito Team

    #managedfiletransfer #FileManagement #filetransfer

  • 30 Mar

    How to use 7z compression in Pascal Script

    How to use 7z compression in Pascal Script

    In version v2024.3.20.0 we added two new Pascal Script functions which allows you to use 7z compression.

    • Function ps7zCompress(Source: String; Destination: String; Password: String; Options: TStringList): Boolean;
    • Function ps7zCompressEx(Source: String; SourceFiles: TStringList; Destination: String; Password: String; Options: TStringList): Boolean;

    We added an example where we’ll be looking for a certain file called ‘trigger.txt’ within subfolders. If this trigger file is found we’ll compress the complete subfolder. The goal is to create a compressed backup of the complete subfolder content.

    • As Source we used a Windows Folder:

    limagito file mover windows folder as source

    • The content of subfolder ‘Sub’ looks like the following screenshot. It contains the ‘trigger.txt’ file which we’ll use to start the compressing mechanism.

    limagito file mover windows folder as source

    • We added the following include filename filter, because we are searching for the ‘trigger.txt’ only. This file will determine which subfolder we need to compress.

    limagito filemover filename include filter

    • Enable ‘Include Subdirectories’ within the Dir Filter’ setup:

    limagito filemover directory filter

    • We enable our ‘File Memory’ option because we only want to compress its subfolder once. If the trigger.txt is changed, then we’ll compress the subfolder again.

    limagito file mover file memory option

    – Function is set to ‘Copy’ because we want to keep the source files.

    limagito file mover function setup

    • Now add our ‘Pascal Script’ as Destination:
      • Please add the following script: link
      • Please adjust the following Const if needed:
        • ctZipPassword
        • ctZipExt
        • ctOutputPath

    7z compression in Pascal Script

    • The new ps7zCompress function has quite some options available which you can adjust if needed:
      • AddDirectory = False, True (default: True)
      • CompressionMethod = Copy, Deflate, Deflate64, BZip2, LZMA, LZMA2, PPMd (default: Deflate)
      • DuplicateCheck = None, Existing, All (default: Existing)
      • DuplicateAction = Overwrite, Error, Skip (default: Overwrite)
      • EncryptionMethod = None, AES128, AES192, AES256, ZipCrypto (default: ZipCrypto)
      • FileIncludeFilter = (default: *.*)
      • ScanSubDirectories = False, True (default: True)
      • Level = 0..9 (default: 7)
      • Threads = 1 .. 255 (default: 1)
      • Error = ‘Error Description if compression fails’

    7z compression in Pascal Script

    • RunTime Log Result:

    limagito filemover runtime log

    • Output Result:

    7z compression in Pascal Script

    If you need any help with our new ‘7z compression in Pascal Script’ feature, please let us know.

    Best Regards,

    Limagito Team

    #7z #pascalscript #managedfiletransfer #FileManagement #filetransfer

    By Limagito-Team Pascal Script ZIP ,
  • 17 Mar

    How to check the printer status before sending a pdf to the printer update

    How to check the printer status before sending a pdf to the printer

    Previous article: link

    We added a new Pascal Script function in version v2024.3.17.0

    Function psGetUrlContent(Const aUrl, aParams: String; var aError: String): String;

    Please check the previous article, we only changed the following part:

    • First Destination: Pascal Script
      • Please add the following script: link
      • We added the following Const values which you’ll need to adjust:
        • ctCheckPrinterConnection: This will add the possibility to check the printer using the URL of the printer (web page). A lot of network printers have an internal web server that we’ll be using to check if the printer is online.
          • Set this value to ‘TRUE’ if you want to use this option, otherwise set this Const to ‘FALSE’.
        • cpPrinterUrl: If ‘ctCheckPrinterConnection := True;’ then add the Url (web interface) of the Printer we need to check.
        • ..

    We added this update because the customer had a printer where, by default, only its web interface was enabled. In the previous article we used a telnet connection which seems to be disabled with some printer due to security reasons.

    check the printer status update

    If you need any help with this ‘check the printer status’ request, please let us know.

    Best Regards,

    Limagito Team

    #pdf #managedfiletransfer #filetransfer #filemanagement

1 2 3 4 5 6 29
SEARCH