• 20 Jan

    Using HTTP Server RunTime Log option as Interface

    Dear Users,

    On request we expanded the built in HTTP server to except some extra parameters of the log URL (i.e. http://127.0.0.1:8080/log )

    • Before we go further, please check if the HTTP Server is Enabled (Menu item: Server\HTTP Server)

    • Also the RunTime Log option must be enabled to use these extra parameters

    What parameters were already available:

    • ruleid
      • Show the RunTime Log of RuleID 4
        • http://127.0.0.1:8080/log?ruleid=4
    • exe
      • Execute RuleID4
        • http://127.0.0.1:8080/log?ruleid=4&exe=4

    Since v2019.1.20.0 we’ve added the following extra parameters:

    • status
      • Get the Status of RuleID 4 as HTML Status Code
        • http://127.0.0.1:8080/log?status=4
      • We are using unassigned Status codes as Rule Status (RFC7231: 227-299 Unassigned)
        • 250 = Hold Mode
        • 251 = Move Enabled
        • 252 = Copy Enabled
        • 253 = Delete Enabled
        • 254 = Move enabled, Check RunTime Log
        • 255 = Copy enabled, Check RunTime Log
        • 256 = Delete enabled, Check RunTime Log
        • 257 = Move Disabled
        • 258 = Copy Disabled
        • 259 = Delete Disabled
        • 261 = Move Running
        • 262 = Copy Running
        • 263 = Delete Running
        • 264 = Move Terminating
        • 265 = Copy Terminating
        • 266 = Delete Terminating
        • 270 = Scanning Disabled
    • report
      • Get the Report of RuleID 4
        • http://127.0.0.1:8080/log?report=4

    Quite some customers use a command line tool called curl to execute a rule from an external application. This command line tool (curl) uses the built in HTTP server options/parameters we explained before.

    Some examples:

    • Execute RuleID4 using curl
      • curl http://127.0.0.1:8080/log?ruleid=4&exe=4
    • Get Status Code of RuleID as HTML Status Code using curl
      • curl -sL -w “%{http_code}” -I “http://127.0.0.1:8080/log?status=4” -o /dev/null
    • Get Report of RuleID 4 in your browser

    Please let us know if you have any questions about these new parameters. Don’t hesitate to contact us.

    Limagito Team

    By Limagito New Option , ,
  • 20 Jan

    Converting XLS Files, Example 1

    https://limagito.com/converting-xls-files/

    First example: convert a xls(x) file to a tabbed txt file

    1) Add the following ‘Filename Include Filter’ so we are 100% sure we’ll only handle xls(x) files

    2) Add PS (Pascal Script) as Destination

    3) Add the following Pascal Script

    Const
    CsvPath = ‘C:\Test\OUT_XLS\’;
    Begin
    psExitCode := 0;
    // … add your code here
    // 2 = Text based file, #09 is tab delimited, 0 is UTF8 text encoded
    If psConvertXlsFile(psFilePath + psFileName, CsvPath + ChangeFileExt(psFileName, ‘.txt’), 2, #09, 0, ‘Run results’) Then
    Begin
    psExitCode := 1;
    psLogWrite(1, ”, ‘Converted ‘ + psFilePath + psFileName);
    End
    Else
    psLogWrite(1, ”, ‘Convert error ‘ + psFilePath + psFileName);

    // psConvertXlsFile(psFilePath + psFileName, CsvPath + ChangeFileExt(psFileName, ‘.csv’), 2, ‘,’, 0, ‘Run results’);
    End.

    By Limagito New Option , ,
  • 19 Jan

    Converting XLS Files

    Dear Users,

    We got a request to add an option to convert xls(x) to csv and txt. It should work without Excel being installed. All should be native code.

    This options was added as a Pascal Script function in version v2019.1.19.0.

    – Use psConvertXlsFile to convert xls(s) files to xls(x), csv, txt, …

    Function psConvertXlsFile(SrcFile, DstFile: String; Format: Integer; Delimiter: Char; Encoding: Integer; Sheet: String): Boolean;

    SrcFile = Source File (FilePath + filename)
    DstFile = Destination File (FilePath + Filename)
    Format = Destination File format

    • 0 = Automatic Automatically detect the type of the file when opening files.
    • 1 = Xls Excel 97-2000-XP-2003
    • 2 = Text Delimiter separated values. Depending on the delimiter, this can be csv, tab delimited text, etc.
    • 3 = Pxl Pocket Excel 1.0 or 2.0
    • 4 = Xlsx Excel 2007 standard file format. Note that this is *not* a macro enabled file format. If you want to save a file with macros, you need to use Xlsm instead.
    • 5 = Xlsm Excel 2007 macro enabled file format.

    Delimiter = Delimiter Char to use if Format Text ( #09 = Tab )
    Encoding = Encoding for the generated file, when writing a Text-delimited file (csv or txt). This parameter has no effect on xls/x files.

    • 0 = UTF8
    • 1 = UTF7
    • 2 = Unicode
    • 3 = Default
    • 4 = BigEndianUnicode
    • 5 = ASCII
    • 6 = ANSI

    Sheet = Name of the sheet that needs to be converted

    Pascal Script Examples:

    i.e. Convert the sheet Results of a xls(x) file to a tab delimited txt file. Destination will be a UTF8 encoded text file.

    Const
    CsvPath = ‘C:\Test\OUT_XLS\’;
    Begin
    psExitCode := 0;
    // … add your code here
    If psConvertXlsFile(psFilePath + psFileName, CsvPath + ChangeFileExt(psFileName, ‘.txt’), 2, #09, 0, ‘Results’) Then psExitCode := 1;
    End.

    i.e. Convert the sheet Results of a xls(x) file to a csv delimited txt file. Destination will be a UTF8 encoded text file.

    Const
    CsvPath = ‘C:\Test\OUT_XLS\’;
    Begin
    psExitCode := 0;
    // … add your code here
    If psConvertXlsFile(psFilePath + psFileName, CsvPath + ChangeFileExt(psFileName, ‘.csv’), 2, ‘,’, 0, ‘Results’) Then psExitCode := 1;
    End.

    Don’t hesitate to contact us if you need any information about this new function.

    Regards,
    Limagito Team

    By Limagito New Option , ,