Pre Step and Post Step in FastDataMasker are not showing number of rows updated

book

Article ID: 198494

calendar_today

Updated On:

Products

CA Test Data Manager (Data Finder / Grid Tools)

Issue/Introduction

Hi ,

I am using FastDataMasker (FDM) Version 4.8.153.0.

As a best practice to improve performance or to meet certain requirements like dropping/enabling unique key,
I am using the option of Post Step/Pre Step to supply SQL Queries that can be executed in the database(SQL Server).

For eg:- I have to mask a certain column with a fixed value, rather than going for Fixed Function in FastDataMasker I can use an SQL UPDATE in a Post step.

In Current masking logs, post-execution of the Text file with SQL Queries it will show a message like -
2020-08-13 15:51:51.629 Processing Post Step: ABC\Sql_scripts\ABC.txt ... 
2020-08-13 16:08:38.848 Processing of ABC\Sql_scripts\ABC.txt complete 
2020-08-13 16:08:38.848 File:ABC\Sql_scripts\ABC.txt sucessfully run 
2020-08-13 16:08:38.848 exit value = 0 

Is there a way to retrieve information about the number of rows updated along with this?
For eg:- If the post step SQL updates 45 rows in the database, is there a way to get this information in masking logs?



Cause

Version issue. The client needs to be running version 4.9.51.0 or newer

Environment

FDM 4.8.x
TDM 4.8.x

Resolution

Please update to version 4.9.51 or newer of TDM to have this ability.
FDM 4.9.X can be used with TDM 4.8.X

 

Additional Information

FDM expects each SQL command in this file to be terminated by semicolon (;) character.
Or in other words, commands should be separated by semicolons.
Otherwise, FDM executes all commands as one bunch and displays the number of affected rows only for the first one.
By using semicolons it'll execute commands one by one and displays the number of affected rows for each of them.

Example:

update TBL_Customer
set NameDenorm = lower (Name),
FormerName = Name,
MailTo = Name
where (Name is not NULL) and  (ID <1000000);

update TBL_Customer
set NameDenorm = lower (Name),
FormerName = Name,
MailTo = Name
where (Name is not NULL) and  (ID between 1000001 and 2000000);