Skip to main content

Using Scan MD Microstrategy

ScanMD 

WHAT IS SCAN MD?
ScanMD is a troubleshooting application whose aim is to provide a quick resolution to known metadata logical inconsistencies.  Logical inconsistencies are errors within an object's definition structure. The word 'known" means that those erroneous structures have already been investigated and processed by MicroStrategy Technical Support and, as a result, a Test has been implemented in ScanMD. 
It is not the intention that ScanMD be used as a proactive method for addressing metadata inconsistencies.  If you find yourself proactively running ScanMD and/or finding inconsistencies through ScanMD then please contact MicroStrategy Technical Support as this means that there is, most likely, a deeper problem to be investigated.
Refer to the following technical note if ScanMD is going to be executed against a 10.3 and higher metadata:
CONSIDERATIONS/GUIDELINES
  • ScanMD is to be used as a troubleshooting application and a vehicle to provide a quick resolutionafter a problem has been identified as a metadata inconsistency. In other words, ScanMD should not be run on a "schedule" or "after every migration". 
  • Before running ScanMD, a database backup of the metadata must be made. With a backup of the metadata in place, proposed fixes should only be accepted if the full impact of the fix is understood.
  • When a Fix is performed on a project, the MicroStrategy Intelligence Server should be stopped, or that Project unloaded.  No users should be connected to the project undergoing a fix.
  • Always use the latest version of ScanMD, which is the one supplied in this document.
  • For cases where ScanMD is used, there may still be questions as to how the metadata got into this state.  To help answer that question --  customers encountering inconsistency issues should make note of Schema-related changes (if the problem is affecting Schema objects), Object Migrations, or error messages prior to experiencing the problem.  Change Journaling, if it has been enabled, can help in preserving this information.
Microstrategy's disclaimers and Limitation of Liabilities about using ScanMD:

Disclaimer:The utility application is provided "as is" and without warranty of any kind. Microstrategy Expressly disclaims all warranties, express, implied or statutory, including, without limitation, the implied warranties of merchantability, fitness for a particular purpose, satisfactory quality and noninfringement.
Limitation of Liability: Microstrategy shall have no liability to licensee for any damages of any kind, including, but not limited to, liability for direct, indirect, special, incidental or consequential, damages (which shall include, but not be limited to, loss of data or information, loss of revenue or anticipated profits or lost business).
SCANMD CHECK-ONLY MODE
The current version of ScanMD does not provide the ability to execute one or more common tests in check-only mode. Due to the new feature enforcing the inter-object dependencies, check-only mode is not possible in this release. Consider one example, before executing  Schema Collection Verification test which ensures all schema objects are in the Schema collection, the ScanMD will execute Table Verification test and eliminate table objects with invalid definition. Therefore, the execution sequence is crucial to maintain the metadata consistency. Check-only mode may generate misleading results by ignoring inter-object dependencies and execution sequence.
HOW TO USE SCANMD
Follow steps below:
  1. Go to Start -> Programs -> MicroStrategy -> Tools, run ScanMD
  2. Click Nextto pass ScanMD introduction to the next step, which is Step 1of ScanMD
  3. In Step 1, choose a Project Source from the drop down list, and enter a Login and a Passwordthat have administrative privileges to the metadata. Click Next to go to Step 2
  4. In Step 2, choose a single projectAll Projects , or Configuration from the drop down list. Select a different location for log file if desired. Click Next to go to Step 3

      
    NOTE: During the transition from Step2 to Step3, ScanMD will check the compatibility between the Metadata Version and the version of the MicroStrategy platform present on the machine where ScanMD is running.


  5. In Step 3, choose between Common Tests and Custom Tests. If a Custom Test is not yet added, click Add test to browse to its location. Make your test selections, and Click Next to go to Step 4;



    NOTE:
    - Multiple Common Tests can be chosen at once, but only one Custom Test can run one at a time.
    - Either Common Tests or Custom Tests can be selected, but not both.

  6. In Step 4, adjust tests against project(s) chosen in Step 2, select a Number of concurrent test executions, choose whether to Fix all errors automatically or not, and click Next to begin the scan; If any errors are found, ScanMD will pop up a dialog for each set of Common Tests that was executed.


    NOTE:
    - Some ScanMD Common Tests must be run in a specific order. As of ScanMD 8, the execution order of the Tests is enforced. If Common Tests is chosen in Step 3, ScanMD will automatically add any other Common Tests that are required. 

    Based on your test selections, Scan MD has identified some additional tests which need to be run in order to ensure the integrity of your Metadata.
    The required tests will be added to your selections.

    Though only "Attribute Verification" and "Hierarchies Verification" are selected, four other common tests are added with suffix "(Required)":

    - Those Tests which do not have any dependencies are still allowed to execute in parallel.
    - "Concurrent test executions" usually reduce the overall execution time when running on a computer with multiple cores or CPUs and against remote MDs (i.e. not a local DB such as Access).

  7.  In the Summary Step, select "Check here to open the log file" if you wish to review, after clicking Close, the actions that ScanMD performed. Otherwise, simply click Close

    ScanMD Test Results:

    ScanMD Summary step:

  8. Restart Intelligence Server if the changes cannot be reflected in 3-tier environemnt.  

Comments

Post a Comment

Popular posts from this blog

Microstrategy Custom number formatting symbols

Custom number formatting symbols If none of the built-in number formats meet your needs, you can create your own custom format in the Number tab of the Format Cells dialog box. Select  Custom  as the Category and create the format using the number format symbols listed in the table below. Each custom format can have up to four optional sections, one each for: Positive numbers Negative numbers Zeros Text Each section is optional. Separate the sections by semicolons, as shown in the example below: #,###;(#,###);0;"Error: Entry must be numeric" For more examples, see  Custom number formatting examples . To jump to a section of the formatting symbol table, click one of the following: Numeric symbols Character/text symbols Date and time symbols Text color symbols Currency symbols Conditional symbols Numeric symbols For details on how numeric symbols apply to the Big Decimal data type, refer to the  Project Design Guide . ...

MicroStrategy URL API Parameters

MicroStrategy URL Structure The following table summarizes the root URL structure used for every request to MicroStrategy Web. Environment Main Application URL Administration URL J2EE http://webserver/MicroStrategy/servlet/mstrWeb http://webserver/MicroStrategy/servlet/mstrWebAdmin .NET http://webserver/MicroStrategy/asp/Main.aspx http://webserver/MicroStrategy/asp/Admin.aspx Every request sent to MicroStrategy Web calls a central controller. Parameters are appended to  Main.aspx  or  mstrWeb  (in a .NET and J2EE environment, respectively) to indicate to the controller how the request should be internally forwarded and handled. The following examples show a URL for accessing a MicroStrategy folder when the user does not have an existing session. The URL contains not only the parameters needed to connect to MicroStrategy Web, but also the parameters needed to log on and create a session. J2EE environment: <a href="http:...

Case functions Microstrategy

Ca se functions Microstrategy Case functions return specified data in a SQL query based on the evaluation of user-defined conditions. In general, a user specifies a list of conditions and corresponding return values. Case This function evaluates multiple expressions until a condition is determined to be true, then returns a corresponding value. If all conditions are false, a default value is returned.  Case  can be used for categorizing data based on multiple conditions. This is a single-value function. Syntax Case ( Condition1 ,  ReturnValue1 ,  Condition2 , ReturnValue2 ,...,  DefaultValue ) Example Case(([Total Revenue] < 300000), 0, ([Total Revenue] < 600000), 1, 2) sum(Case (Day@DESC in (“Sat”,”Sun”), Sales, 0) {~+} Sum(Case(Category@DESC In("Books","Electronics"),Revenue,0)){~+} CaseV (case vector) CaseV  evaluates a single metric and returns different values according to the results. It can be used to perfo...

Apply or Pass-through functions in Microstrategy

Ap ply (Pass-Through) functions MSTR Apply functions provide access to functions or syntactic constructs that are not standard in MicroStrategy but are provided by various RDBMS systems.. Syntax common to Apply functions Apply Function Name   ("expression with placeholders", Arg1, Arg2, Arg3, …ArgN) where: Apply Function Name  – is a generic name used for the predefined pass-through functions described above expression with placeholders  – is the string describing the actual expression or syntax that the engine uses while generating the SQL and which is sent to the RDBMS. The placeholders are represented by #0, #1, and so on. "#" is a reserved character for MicroStrategy. Arg  – is an argument that replaces the parameter markers in the pattern. Arg1 replaces #0, Arg2 replaces #1, and so on. There are   five  pre-defined Apply functions to replace regular, predefined functions of the same type. For more details, cli...

Create an alert-based subscription in MicroStrategy Distribution Services

Create an alert-based subscription in MicroStrategy Distribution Services on Web Subscription to a report or Report Services document which will be executed when a certain conditional threshold is met based on another executing report. For example, a scheduled report executes which shows the Revenue by day for the past week. If the Revenue on any one day falls below a certain value, a subscription to another report or Report Services document can be triggered and delivered to a recipient. An alert based subscription can only be created directly on a report; however, another report or Report Services document can be delivered when the alert based subscription is triggered. Note: you need a grid report to create an alert and you cannot create if you want to create on a document with text boxes. The following example will walk through the basic steps on how to setup a subscription based on an alert like this: Follow the brief  steps bel...

Control the display of null and zero metric values

Show   Control the display of null and zero metric values in a grid report You can determine how to display or hide rows and columns in a grid report that consist only of null or zero metric values. You can have MicroStrategy hide the rows and columns in the following ways: Hide rows and columns that consist only of null metric values Hide rows and columns that consist only of zero metric values Hide rows and columns that consist only of null or zero metric values (default) Once you have defined how MicroStrategy hides null and zero metric values in the grid, you can quickly show or hide the grid using the Hide Nulls/Zeros option in the Data menu, as described below, or by clicking the  Hide Nulls/Zeros  icon  in the Data toolbar. To determine how null and zero metric values are displayed or hidden in a grid report Open the report in Edit mode. From the  Tools  menu, select  Report Options . The Report Options...

Prompt-in-prompt(Nested Prompts) in Microstrategy

Prompt-in-prompt(Nested Prompts) in  Microstrategy Nested prompts allows you to create one prompt based on the other and other bases on another, nested prompts allows us to prompt the highest level(Like year) to middle level(like Quarter, then to the low level(like Month). Here you can see how to  create a 3-level deep nested prompt that will prompt the user to select a year, then a quarter within that year, then a month within that quarter. Prompt-in-prompt is a feature in which the answer to one prompt is used to define another prompt. This feature is only implemented for element list prompts . The following procedure describes how to achieve this: Create the highest level filter. This is a filter which contains a prompt on an attribute element list. Create a filter on the attribute "Year." Click "prompt on attribute element list" and click "Next" through the rest of the screens to accept the default values. Do not set any additio...

RunningSum calculation only on the metric subtotal in MicroStrategy

RunningSum calculation only on the metric subtotal in MicroStrategy Here are the series of steps to setup report objects in which metrics and subtotals so only the  subtotal field  will contain the  RunningSum  and the  regular metric values  will be  standard sum values . 1) Create Metric 1 which is the sum of the fact that is to be in the columns. 2) Create Metric2 as the RunningSum of Metric1.  NOTE:  The  sortby  parameter for the RunningSum should be set to whichever attribute you want the report sorted by. 3) Create Metric3 as Metric1 + (Metric2 x 0) 4) Create a new subtotal called "Max" which is defined as Max() 5) On the Subtotals/Aggregation tab for Metric 3, set the Total subtotal function to be "Max" and select the check box for "Allow Smart Metric" 6) Create the desired report and place the 3 metrics on the report.  NOTE:  Only Metric3 is required on the gri...

Creating a .mstrc file from an empty text file

Creating a .mstrc file from an empty text file If instead a “.mstrc” file needs to be created for an environment connection prior submission, please follow these steps. To create a MicroStrategy Environment connection file .mstrc, please open a Notepad or Notepad++. Use the Notepad and use the following syntax by replacing the values according to your environment: {   "authenticationMode" : 1,   "dossierServerURL" : " https://LIBRARY_SERVER_URL/MicroStrategyLibrary_EXAMPLE/" ",   "environmentName" : "ENVIRONMENT_NAME" } The file looks like: Note: If it is a default MicroStrategy installation of MicroStrategy Library, the environment URL format will be the following: https://LIBRARY_SERVER_URL_or_IP:8080/MicroStrategyLibrary/ Save and assign a name to the file like “My_first_connection_file.mstrc”.   What does the .mstrc include? Environment Name—a unique name for your environment dossierServerURL—refers to URL of the Li...

HyperIntelligence Training Videos

HyperIntelligence  Training Videos           Design and build hyper cards Optimizing Datasets for HyperIntelligence Using the HyperIntelligence for Office Outlook Add-In Building HyperIntelligence Cards Using HyperIntelligence for Mobile on Android Deploying HyperIntelligence for Outlook Insights On-The-Go: HyperIntelligence for Mobile Building HyperIntelligence Profile Cards Designing Custom HyperIntelligence Cards Using the Calendar with HyperIntelligence for Mobile