Q: Is it possible in LimagitoX File Mover to rename a file that has a date in the filename to also include the day of the week?
Here is an example of what I would like to rename.
Original Filename: XYZ001D_04_21_20_ABCD.pdf
(04_21_20 = April 21, 2020)
Rename To: Tues_XYZ001D_04_21_20_ABCD.pdf
A: Yes this is possible using Pascal Script. Some screenshots to get you started.
Add The Following ‘On Destination’ Pascal Script:
// Original Filename: XYZ001D_04_21_20_ABCD.pdf // (04_21_20 = April 21, 2020) // Rename To: Tues_XYZ001D_04_21_20_ABCD.pdf Var tmpDate: TDateTime; tmpDateStr: String; tmpPos: Integer; tmpLen: Integer; tmpDay: Integer; Const ctDateLen = 8; Begin psExitCode := 0; // ... add your code here tmpPos := pos('_', psFileName); tmpLen := Length(psFileName); // Check If (tmpPos = 0) And (tmpLen = tmpPos + ctDateLen) Then Begin Try tmpDateStr := Copy(psFileName, tmpPos+1, ctDateLen); psLogWrite(1, '', 'Date stripped as String: ' + tmpDateStr); tmpDate := psStrToDate(tmpDateStr, 'mm_dd_yy', '_'); tmpDay := DayOfTheWeek(tmpDate); psLogWrite(1, '', 'Day Of The Week: ' + IntToStr(tmpDay)); Case tmpDay Of 1: psVSA := 'Mond_'; // Monday 2: psVSA := 'Tues_'; // Tuesday 3: psVSA := 'Wedn_'; // Wednesday 4: psVSA := 'Thur_'; // Thursday 5: psVSA := 'Frid_'; // Friday 6: psVSA := 'Satu_'; // Saturday 7: psVSA := 'Sund_'; // Sunday End; // Set ExitCode psExitCode := 1; Except psLogWrite(1, '', 'Exception Error when searching for Date in filename: ' + psFilePath + psFileName); End; End Else psLogWrite(1, '', 'Not a valid filename: ' + psFilePath + psFileName); End.
In your Destination Setup select the ‘Rename’ Tab. Enable ‘Rename Files during Copy/Move and click the button next to this option.
File Rename Setup:
RegEx: (.*)
Replacement: %VSA\1
The goal of this renaming is to add the %VSA var in front of the filename. The %VSA var was previously set in the Pascal Script.
The \1 corresponds with the RegEx (.*) which is in this case the complete filename.
If you need help, please let us know. Don’t hesitate to ask.
Regards,
Limagito Team