Profiler Object:Initialization: Difference between revisions

From Melissa Data Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
[[Profiler Object:Reference|← Profiler Object Reference]]
[[Profiler Object:Reference|← Profiler Object Reference]]


{| class="mw-collapsible" cellspacing="2" style="background-color:#f9f9f9; border:1px solid #aaaaaa; font-size:9pt; color:#0645ad; padding:8px 8px;"
{{ProfilerObjectNav}}
! style="text-align:left; color:black; border-bottom:1px solid #aaaaaa;"|'''Profiler Object Interface Navigation'''
|-
| style="padding-right:220px;"|
|-
|[[Profiler Object:Initialization|Initialization]]
|-
|[[Profiler Object:Object Information|Object Information]]
|-
|[[Profiler Object:Enumeration Listing and Parsing|Enumeration Listing and Parsing]]
|-
|[[Profiler Object:Column Specification|Column Specification]]
|-
|[[Profiler Object:Initiate Profiling|Initiate Profiling]]
|-
|[[Profiler Object:Data Input|Data Input]]
|-
|[[Profiler Object:Profiling|Profiling]]
|-
|[[Profiler Object:Table-Based Statistics|Table-Based Statistics]]
|-
|-
|
{| class="mw-collapsible mw-collapsed" style="width:100%;"
|- align="left"
! style="color:black;"|[[Profiler Object:Column-Based Statistics|Column-Based Statistics]]
|-
|[[Profiler Object:Column-Based String Statistics|Column-Based String Statistics]]
|-
|[[Profiler Object:Column-Based Numeric Statistics|Column-Based Numeric Statistics]]
|-
|[[Profiler Object:Column-Based Date/Time Statistics|Column-Based Date/Time Statistics]]
|-
|[[Profiler Object:Column-Based Name Statistics|Column-Based Name Statistics]]
|-
|[[Profiler Object:Column-Based State/Province Statistics|Column-Based State/Province Statistics]]
|-
|[[Profiler Object:Column-Based Zip/Postal Code Statistics|Column-Based Zip/Postal Code Statistics]]
|-
|[[Profiler Object:Column-Based Country Statistics|Column-Based Country Statistics]]
|-
|[[Profiler Object:Column-Based Email Statistics|Column-Based Email Statistics]]
|-
|[[Profiler Object:Column-Based Phone Statistics|Column-Based Phone Statistics]]
|-
|}
|-
|
{| class="mw-collapsible mw-collapsed" style="width:100%;"
|- align="left"
! style="color:black;"|[[Profiler Object:Iterators|Iterators]]
|-
|[[Profiler Object:Column-Based Value Frequency Table Iteration|Column-Based Value Frequency Table Iteration]]
|-
|[[Profiler Object:Column-Based Value Length Frequency Table Iteration|Column-Based Value Length Frequency Table Iteration]]
|-
|[[Profiler Object:Column-Based Value Pattern Table Iteration|Column-Based Value Pattern Table Iteration]]
|-
|[[Profiler Object:Column-Based Value Date/Time Table Iteration|Column-Based Value Date/Time Table Iteration]]
|-
|[[Profiler Object:Column-Based Value SoundEx Table Iteration|Column-Based Value SoundEx Table Iteration]]
|-
|[[Profiler Object:Column-Based Word Table Iteration|Column-Based Word Table Iteration]]
|-
|[[Profiler Object:Column-Based Word Length Table Iteration|Column-Based Word Length Table Iteration]]
|-
|}
|-
|
{| class="mw-collapsible mw-collapsed" style="width:100%;"
|- align="left"
! style="color:black;"|[[Profiler Object:Result Codes|Result Codes]]
|-
|[[Returned Result Codes:APIs#Profiler Object|Returned Result Codes]]
|-
|[[Result Codes]]
|}
|}




<div class="toclimit-2">{{CustomTOC}}</div>
<div class="toclimit-2">{{CustomTOC}}</div>


The following functions set the paths to the necessary data files, the license, and initialize the Profiler Interface:
The following functions set the paths to the necessary data files, the License Key, and initialize the Profiler Interface:


==SetLicenseString==
==SetLicenseString==
This function sets the license string required to enable Profiler Object’s complete functionality.
This function sets the License Key required to enable Profiler Object’s complete functionality.
 
The License Key is a software key that unlocks the full functionality of the component. Without the License Key, the object will only function in [[Profiler Object:Licensing#Demo Mode|Demo Mode]].


The License String is a software key that unlocks the full functionality of the component. Without the License String, the object will only function in DEMO mode
The License Key is normally set using an environment variable, MD_LICENSE. Calling '''SetLicenseString''' is an alternative method for setting the License Key, but applications developed for a production environment should only use the environment variable. When using an environment variable, it is not necessary to call the '''SetLicenseString''' function. For more information on setting the environment variable, see [[Profiler Object:Licensing|Licensing]].


The license string is normally set using an environment variable, either MD_LICENSE or MD_LICENSE_DEMO. Calling '''SetLicenseString''' is an alternative method for setting the license string, but applications developed for a production environment should only use the environment variable. When using an environment variable, it is not necessary to call the '''SetLicenseString''' function. For more information on setting the environment variable, see [[Profiler Object:Licensing|Licensing]]. This function accepts one parameter.
This function accepts one parameter.


===Parameters===
===Parameters===
Line 96: Line 22:
|Name=LicenseString
|Name=LicenseString
|Data Type=String
|Data Type=String
|Description=A string value representing the software license key.
|Description=A string value representing the software License Key.
}}
}}
===Return Value===
===Return Value===
The '''SetLicenseString''' function returns value of 0 or 1.
The '''SetLicenseString''' function returns value of 0 or 1. A value of 0 means that the provided License Key is incorrect.
 
The '''SetLicenseString''' function returns 0 if the provided License String is incorrect.


{{ Object Syntax
{{ Object Syntax
Line 110: Line 34:


==SetPathToProfilerDataFiles==
==SetPathToProfilerDataFiles==
The '''SetPathToProfilerDataFiles''' function sets the the path to the data files required for profiling.
This function sets the the path to the data files required for profiling.


The required data files are
The required data files are
Line 131: Line 55:
}}
}}


==SetFileName (Optional)==
==SetFileName==
This function sets the path/file name of profiling output file. The processing results will be stored in the output file. This function accepts one parameter
This function sets the path/file name of profiling output file. The processing results will be stored in the output file.
 
This function accepts one parameter


===Parameters===
===Parameters===
Line 147: Line 73:
}}
}}


==SetAppendMode (Optional)==
==SetAppendMode==
This function sets the mode for how the output file needs to be handled. The default is overwrite mode if this function is not called.
'''Optional'''. This function sets the mode for how the output file needs to be handled. The default is overwrite mode if this function is not called.


Note that if a Profiler file is opened in append mode, certain statistics will not be accurate, as some results cannot be carried over from run to run. Specifically: TableExactMatch, TableContactMatch, TableHouseholdMatch,TableAddressMatch, ColumnInferredDataType, ColumnSortation, and ColumnSortationPercent.
If a Profiler file is opened in append mode certain statistics will not be accurate, as some results cannot be carried over from run to run. Specifically: TableExactMatch, TableContactMatch, TableHouseholdMatch,TableAddressMatch, ColumnInferredDataType, ColumnSortation, and ColumnSortationPercent.


If you intend to open the file in Append mode, you will want call '''[[#SetSortAnalysis|SetSortAnalysis()]]''', '''[[#SetMatchUpAnalysis|SetMatchUpAnalysis()]]''' and '''[[#SetRightFielderAnalysis|SetRightFielderAnalysis()]]''' appropriately.
If you intend to open the file in Append mode, you will want to call '''[[#SetSortAnalysis|SetSortAnalysis]]''', '''[[#SetMatchUpAnalysis|SetMatchUpAnalysis]]''' and '''[[#SetRightFielderAnalysis|SetRightFielderAnalysis]]''' appropriately.


The '''SetAppendMode''' function takes a value of the enumerated type '''AppendMode'''.
The '''SetAppendMode''' function takes a value of the enumerated type '''AppendMode'''.
Line 167: Line 93:
|1
|1
|Report
|Report
|Open the profile table so that reporting may be done. No new records can be appended to the profile run.  
|Open the profile table so that reporting may be done. No new records can be appended to the profile run.
|-
|-
|2
|2
Line 177: Line 103:
|Output profile table must not exist.
|Output profile table must not exist.
|}
|}


===Parameters===
===Parameters===
Line 191: Line 118:
}}
}}


==SetUserName (Optional)==
==SetUserName==
This function sets the user name for a particular run. This is optional. This function accepts one parameter.
'''Optional'''. This function sets the user name for a particular run. This function needs to be set prior to calling [[Profiler Object:Initialization#InitializeDataFiles|InitializeDataFiles]].
 
This function accepts one parameter.


===Parameters===
===Parameters===
Line 201: Line 130:
}}
}}


{{ Object Syntax Short1
{{ Object Syntax
|Syntax=profiler->SetUserName(userNameString);
|Syntax=profiler->SetUserName(userNameString);
|C=mdProfilerSetUserName (profiler, UserNameString);
|C=mdProfilerSetUserName (profiler, UserNameString);
|.Net=profiler.SetUserName(userNameString);
}}
==GetUserName==
This function returns the user name for a particular run. The user name is set by the [[#SetUserName]] function.
{{ Object Syntax
|Syntax=profiler->GetUserName();
|C=const char* = mdProfilerGetUserName (profiler);
|.Net=string = profiler.GetUserName();
}}
}}


==SetTableName==
==SetTableName==
This function sets the name of the table. This function takes one parameter
This function sets the name of the table. This function needs to be set prior to calling [[Profiler Object:Initialization#InitializeDataFiles|InitializeDataFiles]].
 
This function accepts one parameter


===Parameters===
===Parameters===
Line 222: Line 163:
}}
}}


==SetJobName (Optional)==
==GetTableName==
This function sets the job name for a particular run. This is optional. This fuction accepts one parameter
This function returns the table name. The table name is set by the [[#SetTableName]] function.
 
{{ Object Syntax
|Syntax=profiler->GetTableName();
|C=const char* = mdProfilerGetTableName(profiler);
|.Net=string = profiler.GetTableName();
}}
 
==SetJobName==
'''Optional'''. This function sets the job name for a particular run. This function needs to be set prior to calling [[Profiler Object:Initialization#InitializeDataFiles|InitializeDataFiles]].
 
This fuction accepts one parameter


===Parameters===
===Parameters===
Line 238: Line 190:
}}
}}


==SetJobDescription (Optional)==
==GetJobName==
This function sets the job description for a particular run. This is optional. This function accepts one parameter.
This function returns the job name for a particular run. The job name is set by the [[#SetJobName]] function.
 
{{ Object Syntax
|Syntax=profiler->GetJobName();
|C=const char* = mdProfilerGetJobName (profiler);
|.Net=string = profiler.GetJobName();
}}
 
==SetJobDescription==
'''Optional'''. This function sets the job description for a particular run. This function needs to be set prior to calling [[Profiler Object:Initialization#InitializeDataFiles|InitializeDataFiles]].
 
This function accepts one parameter.


===Parameters===
===Parameters===
Line 254: Line 217:
}}
}}


==SetSortAnalysis (Optional)==
==GetJobDescription==
This function omits the sortation analysis. Sortation analysis can consume a good amount of the '''AddRecord()''' profiling time. This time penalty grows geometrically as more records are added, so it can be quite costly. As many users are not interested in this statistic, it is a good candidate for omission.
This function returns the job description for a particular run. The job description is set by the [[#SetJobDescription]] function.
 
{{ Object Syntax
|Syntax=profiler->GetJobDescription();
|C=const char* = mdProfilerGetJobDescription (profiler);
|.Net=string = profiler.GetJobDescription();
}}
 
==SetSortAnalysis==
'''Optional'''. This function enables/disables the sortation analysis, which can increase '''[[Profiler Object:Data Input#AddRecord|AddRecord]]''' profiling time. This time penalty grows geometrically as more records are added. If you are not interested in this statistic, disable it to decrease your profiling time.


The default value is "true." This function was made available to allow bypassing a time-consuming analysis that may not be required by the user. This property can be turned off by passing "false" for the value. This property should be set before '''InitializeDataFiles()''' is called.
The default value is "true." A "false" value will disable this function. This property should be set before '''[[#InitializeDataFiles|InitializeDataFiles]]''' is called.


===Parameters===
===Parameters===
Line 263: Line 235:
|Name=SortAnalysisValue
|Name=SortAnalysisValue
|Data Type=Int
|Data Type=Int
|Description=0-False, 1-True. This Sets the analysis on or Off
|Description=0-False, 1-True. This Sets the analysis on or off.
}}
}}


Line 269: Line 241:
|Syntax=profiler->SetSortAnalysis(int);
|Syntax=profiler->SetSortAnalysis(int);
|C=mdProfilerSetSortAnalysis(profiler, SortAnalysisValue);
|C=mdProfilerSetSortAnalysis(profiler, SortAnalysisValue);
|.Net=profiler.SetJobSortAnalysis(SortAnalysisValue);
|.Net=profiler.SetSortAnalysis(SortAnalysisValue);
}}
}}


==SetMatchUpAnalysis (Optional)==
==SetMatchUpAnalysis==
This function Omits duplicate record detection. Duplicate analysis consumes some of the '''AddRecord()''' and '''ProfileData()''' profiling time. However, the penalty is not high (under 5% during '''AddRecord()''' and 30% during '''ProfileData()'''), and often outweighs the usefulness of having these statistics.  
'''Optional'''. This function enables/disables duplicate record detection. Duplicate analysis increases the '''[[Profiler Object:Data Input#AddRecord|AddRecord]]''' profiling time by under 5% and '''[[Profiler Object:Profiling#ProfileData|ProfileData]]''' profiling time by about 30%. These time increases often outweigh the usefulness of having these statistics.
The default value is "true." This function was made available to allow bypassing a time-consuming analysis that may not be required by the user. This property can be turned off by passing "false" for the value. This property should be set before '''InitializeDataFiles()''' is called.
 
The default value is "true." A "false" value will disable this function. This property should be set before '''[[#InitializeDataFiles|InitializeDataFiles]]''' is called.


===Parameters===
===Parameters===
Line 280: Line 253:
|Name=MatchUpAnalysisValue
|Name=MatchUpAnalysisValue
|Data Type=Int
|Data Type=Int
|Description=0-False, 1-True. This Sets the analysis on or Off
|Description=0-False, 1-True. This Sets the analysis on or off.
}}
}}


Line 289: Line 262:
}}
}}


==SetRightFielderAnalysis (Optional)==
==SetRightFielderAnalysis==
This function omits inferred data type analysis. This analysis is responsible for the Inconsistant Data and Inferred Data Type statistics. The speed penalty is incurred during the '''AddRecord()''' profiling step, and is under 10%. Because the penalty is not very high and these statistics are useful, it is not usually a good candidate for omission.
'''Optional'''. This function enables/disables inferred data type analysis. This analysis is responsible for the '''Inconsistent Data''' and '''Inferred Data Type''' statistics. This increases the '''[[Profiler Object:Data Input#AddRecord|AddRecord]]''' profiling time by under 10%. It is usually good to keep these useful analysis, even with the increased profiling time.


The default value is "true." This function was made available to allow bypassing a time-consuming analysis that may not be required by the user. This property can be turned off by passing "false" for the value. This property should be set before '''InitializeDataFiles()''' is called.
The default value is "true." A "false" value will disable this function. This property should be set before '''[[#InitializeDataFiles|InitializeDataFiles]]''' is called.


===Parameters===
===Parameters===
Line 307: Line 280:
}}
}}


==SetDataAggregation (Optional)==
==SetDataAggregation==
This function omits all forms of aggregation. This analysis is responsible for all data aggregation steps. Any statistic that cannot be determined incrementally (for example, median, standard deviation, etc) is determined via aggregation. Although the time savings can be rather high (nearly 40%), the aggregation statistics are usually too useful to be sacrificed.
'''Optional'''. This function enables/disables all forms of aggregation and value gathering. Any statistic that cannot be determined incrementally (for example, median, population standard deviation, etc.) is determined via aggregation. This analysis is also responsible for all value tables (Frequency, Pattern, SoundEx, etc.). All iterators and data aggregation statistics are dependent on this analysis. This increase profiling time by over 90%. These statistics are usually useful enough to justify the increased profiling time.


The default value is "true." This function was made available to allow bypassing a time-consuming analysis that may not be required by the user. This property can be turned off by passing "false" for the value. This propertie should be set before InitializeDataFiles() is called.  
The default value is "true." A "false" value will disable this function and by dependency disable all iterators and data aggregation statistics. This property should be set before '''[[#InitializeDataFiles|InitializeDataFiles]]''' is called.


===Parameters===
===Parameters===
Line 316: Line 289:
|Name=DataAggregationVale
|Name=DataAggregationVale
|Data Type=Int
|Data Type=Int
|Description=0-False, 1-True. This Sets the aggregation on or Off
|Description=0-False, 1-True. This Sets the aggregation on or off.
}}
}}


Line 323: Line 296:
|C=mdProfilerSetDataAggregation(profiler, dataAggregationValue);
|C=mdProfilerSetDataAggregation(profiler, dataAggregationValue);
|.Net=profiler.SetDataAggregation(dataAggregationValue);
|.Net=profiler.SetDataAggregation(dataAggregationValue);
}}
==SetCountGeneration (Optional)==
This function omits all forms of value gathering. This analysis is responsible for all value tables (Frequency, Pattern, SoundEx, etc). All iterators will return no results. Also, since data aggregation uses these tables, this also suppresses data aggregation statistics. The time savings is very high (over 90%), but the cost is great.
The default value is "true." This function is available to allow bypassing a time-consuming analysis that you may not require. This property can be turned off by passing "false" for the value. This should be set before '''InitializeDataFiles()''' is called.
===Parameters===
{{Object Parameters
|Name=CountGenerationValue
|Data Type=Int
|Description=0-False, 1-True. This Sets the count generation on or Off
}}
{{ Object Syntax
|Syntax=profiler->SetCountGeneration(int);
|C=mdProfilerSetCountGeneration(profiler, CountGenerationValue);
|.Net=profiler.SetCountGeneration(CountGenerationValue);
}}
}}


==InitializeDataFiles==
==InitializeDataFiles==
Opens the required data files and prepares the profiler for use. You MUST call the '''SetLicenseString''' function (if you don’t have the MD_LICENSE environmental variable set) prior calling '''InitializeDataFiles'''.
This function opens the required data files and prepares the profiler for use. You ''must'' call the '''[[#SetLicenseString|SetLicenseString]]''' function if you don’t have the MD_LICENSE environmental variable set prior to calling '''InitializeDataFiles'''.


If the InitializeDataFiles function returns a code other than zero, you can call the '''GetInitializeErrorString''' function to display a string describing the error.  
If the '''InitializeDataFiles''' function returns a code other than zero, you can call the '''[[#GetInitializeErrorString|GetInitializeErrorString]]''' function to display a string describing the error.


Required Functions
===Required Functions===
You must successfully call SetPathToProfilerDataFiles and SetFileName functions.
You must successfully call '''[[#SetPathToProfilerDataFiles|SetPathToProfilerDataFiles]]''' and '''[[#SetFileName functions|SetFileName functions]]'''.


The InitializeDataFiles function returns a value of the enumerated type ProgramStatus
The '''InitializeDataFiles''' function returns a value of the enumerated type '''ProgramStatus'''.




Line 373: Line 328:
|3
|3
|ErrorLicenseExpired
|ErrorLicenseExpired
|License expired.
|License Key expired.
|-
|-
|4
|4
Line 388: Line 343:
|Syntax=profiler->InitializeDataFiles();
|Syntax=profiler->InitializeDataFiles();
|C=ProgramStatus = mdProfilerInitializeDataFiles(profiler);
|C=ProgramStatus = mdProfilerInitializeDataFiles(profiler);
|.Net=ProgrmStatus = profiler.InitializeDataFiles();
|.Net=ProgramStatus = profiler.InitializeDataFiles();
}}
}}


==GetInitializeErrorString==
==GetInitializeErrorString==
This function returns a descriptive string to describe an error from the InitializeDataFiles function.
This function returns a descriptive string to describe an error from the '''[[#InitializeDataFiles|InitializeDataFiles]]''' function. This can be used to output a message to the user.
 
Remarks
The GetInitializeErrorString function returns a string describing the error that occurred when the InitializeDataFiles function failed. This is useful for outputting a quick message to the user.


{{ Object Syntax
{{ Object Syntax
|Syntax=profiler->InitializeErrorString();
|Syntax=profiler->GetInitializeErrorString();
|C=string  = mdProfilerGetInitializeErrorString(profiler);
|C=const char* = mdProfilerGetInitializeErrorString(profiler);
|.Net=string = profiler.InitializeDataFiles();
|.Net=string = profiler.GetInitializeErrorString();
}}
}}




[[Category:Profiler Object]]
[[Category:Profiler Object]]

Latest revision as of 21:18, 19 December 2016

← Profiler Object Reference

Profiler Object Interface Navigation
Initialization
Object Information
Enumeration Listing and Parsing
Column Specification
Initiate Profiling
Data Input
Profiling
Table-Based Statistics
Column-Based Statistics
Column-Based String Statistics
Column-Based Numeric Statistics
Column-Based Date/Time Statistics
Column-Based Name Statistics
Column-Based State/Province Statistics
Column-Based Zip/Postal Code Statistics
Column-Based Country Statistics
Column-Based Email Statistics
Column-Based Phone Statistics
Frequency Iterators
Column-Based Value Frequency Table Iteration
Column-Based Value Length Frequency Table Iteration
Column-Based Value Pattern Table Iteration
Column-Based Value Date/Time Table Iteration
Column-Based Value SoundEx Table Iteration
Column-Based Word Table Iteration
Column-Based Word Length Table Iteration
Result Codes
Profiler Object Result Codes
Result Codes


The following functions set the paths to the necessary data files, the License Key, and initialize the Profiler Interface:

SetLicenseString

This function sets the License Key required to enable Profiler Object’s complete functionality.

The License Key is a software key that unlocks the full functionality of the component. Without the License Key, the object will only function in Demo Mode.

The License Key is normally set using an environment variable, MD_LICENSE. Calling SetLicenseString is an alternative method for setting the License Key, but applications developed for a production environment should only use the environment variable. When using an environment variable, it is not necessary to call the SetLicenseString function. For more information on setting the environment variable, see Licensing.

This function accepts one parameter.

Parameters

Name Data Type Description
LicenseString String A string value representing the software License Key.

Return Value

The SetLicenseString function returns value of 0 or 1. A value of 0 means that the provided License Key is incorrect.

Syntax profiler->SetLicenseString(StringValue);
C integer = mdProfilerSetLicenseString(profiler, LicenseString);
.Net integer = profiler.SetLicenseString(LicenseString);


SetPathToProfilerDataFiles

This function sets the the path to the data files required for profiling.

The required data files are

  • mdProfiler.dat
  • mdProfiler.mc

This function accepts one Parameter.

Parameters

Name Data Type Description
LocationString String A string value representing the location of the Profiler data files.


Syntax profiler->SetPathToProfilerDataFiles(StringValue);
C mdProfilerSetPathToProfilerDataFiles (profiler, LocationString);
.Net profiler.SetPathToProfilerDataFiles(LocationString);


SetFileName

This function sets the path/file name of profiling output file. The processing results will be stored in the output file.

This function accepts one parameter

Parameters

Name Data Type Description
FileNameString String A string value representing the name of the file.


Syntax profiler->SetFileName(StringValue);
C mdProfilerSetFileName(profiler, FileNameString);
.Net profiler.SetFileName(FileNameString);


SetAppendMode

Optional. This function sets the mode for how the output file needs to be handled. The default is overwrite mode if this function is not called.

If a Profiler file is opened in append mode certain statistics will not be accurate, as some results cannot be carried over from run to run. Specifically: TableExactMatch, TableContactMatch, TableHouseholdMatch,TableAddressMatch, ColumnInferredDataType, ColumnSortation, and ColumnSortationPercent.

If you intend to open the file in Append mode, you will want to call SetSortAnalysis, SetMatchUpAnalysis and SetRightFielderAnalysis appropriately.

The SetAppendMode function takes a value of the enumerated type AppendMode.

Value Name Description
0 Append Add new profiling information to any existing information.
1 Report Open the profile table so that reporting may be done. No new records can be appended to the profile run.
2 Overwrite Overwrite existing output profile table.
3 MustNotExist Output profile table must not exist.


Parameters

Name Data Type Description
appendMode AppedMode This sets the append mode for the output file.


Syntax profiler->SetAppendMode(AppendModeValue);
C mdProfilerSetAppendMode (profiler, appendMode);
.Net profiler.SetAppendMode(appendMode);


SetUserName

Optional. This function sets the user name for a particular run. This function needs to be set prior to calling InitializeDataFiles.

This function accepts one parameter.

Parameters

Name Data Type Description
UserNameString String A string value representing the user name.


Syntax profiler->SetUserName(userNameString);
C mdProfilerSetUserName (profiler, UserNameString);
.Net profiler.SetUserName(userNameString);


GetUserName

This function returns the user name for a particular run. The user name is set by the #SetUserName function.

Syntax profiler->GetUserName();
C const char* = mdProfilerGetUserName (profiler);
.Net string = profiler.GetUserName();


SetTableName

This function sets the name of the table. This function needs to be set prior to calling InitializeDataFiles.

This function accepts one parameter

Parameters

Name Data Type Description
TableNameString String A string value representing the table name.


Syntax profiler->SetTableName(tableNameString);
C mdProfilerSetTableName(profiler, TableNameString);
.Net profiler.SetTableName(TableNameString);


GetTableName

This function returns the table name. The table name is set by the #SetTableName function.

Syntax profiler->GetTableName();
C const char* = mdProfilerGetTableName(profiler);
.Net string = profiler.GetTableName();


SetJobName

Optional. This function sets the job name for a particular run. This function needs to be set prior to calling InitializeDataFiles.

This fuction accepts one parameter

Parameters

Name Data Type Description
JobNameString String A string value representing the Job name.


Syntax profiler->SetJobName(jobNameString);
C mdProfilerSetJobName (profiler, JobNameString);
.Net profiler.SetJobName(JobNameString);


GetJobName

This function returns the job name for a particular run. The job name is set by the #SetJobName function.

Syntax profiler->GetJobName();
C const char* = mdProfilerGetJobName (profiler);
.Net string = profiler.GetJobName();


SetJobDescription

Optional. This function sets the job description for a particular run. This function needs to be set prior to calling InitializeDataFiles.

This function accepts one parameter.

Parameters

Name Data Type Description
JobDesciptionString String A string value representing the job description.


Syntax profiler->SetJobDescription(jobDescriptionString);
C mdProfilerSetJobDescription (profiler, JobDesciptionString);
.Net profiler.SetJobDescription(JobDesciptionString);


GetJobDescription

This function returns the job description for a particular run. The job description is set by the #SetJobDescription function.

Syntax profiler->GetJobDescription();
C const char* = mdProfilerGetJobDescription (profiler);
.Net string = profiler.GetJobDescription();


SetSortAnalysis

Optional. This function enables/disables the sortation analysis, which can increase AddRecord profiling time. This time penalty grows geometrically as more records are added. If you are not interested in this statistic, disable it to decrease your profiling time.

The default value is "true." A "false" value will disable this function. This property should be set before InitializeDataFiles is called.

Parameters

Name Data Type Description
SortAnalysisValue Int 0-False, 1-True. This Sets the analysis on or off.


Syntax profiler->SetSortAnalysis(int);
C mdProfilerSetSortAnalysis(profiler, SortAnalysisValue);
.Net profiler.SetSortAnalysis(SortAnalysisValue);


SetMatchUpAnalysis

Optional. This function enables/disables duplicate record detection. Duplicate analysis increases the AddRecord profiling time by under 5% and ProfileData profiling time by about 30%. These time increases often outweigh the usefulness of having these statistics.

The default value is "true." A "false" value will disable this function. This property should be set before InitializeDataFiles is called.

Parameters

Name Data Type Description
MatchUpAnalysisValue Int 0-False, 1-True. This Sets the analysis on or off.


Syntax profiler->SetMatchUpAnalysis(int);
C mdProfilerSetMatchUpAnalysis(profiler, MatchUpAnalysisValue);
.Net profiler.SetMatchUpAnalysis(MatchUpAnalysisValue);


SetRightFielderAnalysis

Optional. This function enables/disables inferred data type analysis. This analysis is responsible for the Inconsistent Data and Inferred Data Type statistics. This increases the AddRecord profiling time by under 10%. It is usually good to keep these useful analysis, even with the increased profiling time.

The default value is "true." A "false" value will disable this function. This property should be set before InitializeDataFiles is called.

Parameters

Name Data Type Description
RightFielderAnalysisValue Int 0-False, 1-True. This Sets the analysis on or Off


Syntax profiler->SetRightFielderAnalysis(int);
C mdProfilerSetRightFielderAnalysis(profiler, RightFielderAnalysisValue);
.Net profiler.SetRightFielderAnalysis(RightFielderAnalysisValue);


SetDataAggregation

Optional. This function enables/disables all forms of aggregation and value gathering. Any statistic that cannot be determined incrementally (for example, median, population standard deviation, etc.) is determined via aggregation. This analysis is also responsible for all value tables (Frequency, Pattern, SoundEx, etc.). All iterators and data aggregation statistics are dependent on this analysis. This increase profiling time by over 90%. These statistics are usually useful enough to justify the increased profiling time.

The default value is "true." A "false" value will disable this function and by dependency disable all iterators and data aggregation statistics. This property should be set before InitializeDataFiles is called.

Parameters

Name Data Type Description
DataAggregationVale Int 0-False, 1-True. This Sets the aggregation on or off.


Syntax profiler->SetDataAggregation(int);
C mdProfilerSetDataAggregation(profiler, dataAggregationValue);
.Net profiler.SetDataAggregation(dataAggregationValue);


InitializeDataFiles

This function opens the required data files and prepares the profiler for use. You must call the SetLicenseString function if you don’t have the MD_LICENSE environmental variable set prior to calling InitializeDataFiles.

If the InitializeDataFiles function returns a code other than zero, you can call the GetInitializeErrorString function to display a string describing the error.

Required Functions

You must successfully call SetPathToProfilerDataFiles and SetFileName functions.

The InitializeDataFiles function returns a value of the enumerated type ProgramStatus.


Value Name Description
0 ErrorNone No error - initialization was successful.
1 ErrorConfigFile Error in Configuration file
2 ErrorDatabaseExpired Database file expired
3 ErrorLicenseExpired License Key expired.
4 ErrorProfileFile Error in Profile file
5 ErrorUnknown Unknown error.


Syntax profiler->InitializeDataFiles();
C ProgramStatus = mdProfilerInitializeDataFiles(profiler);
.Net ProgramStatus = profiler.InitializeDataFiles();


GetInitializeErrorString

This function returns a descriptive string to describe an error from the InitializeDataFiles function. This can be used to output a message to the user.

Syntax profiler->GetInitializeErrorString();
C const char* = mdProfilerGetInitializeErrorString(profiler);
.Net string = profiler.GetInitializeErrorString();