Skip to main content

Metadata Doctor (MD Doctor) in Microstrategy

Metadata Doctor (MD Doctor) in Microstrategy

Metadata Doctor (MD Doctor) is a utility that detects and fixes certain physical inconsistencies in MicroStrategy 9.4.x - 9.5.x metadatas that may prevent MicroStrategy 9.4.x - 9.5.x products from functioning correctly. 
In simple terms, it detects physical inconsistencies by running SQL against different metadata tables and then comparing results.  If an entry is found in one table but not in the main lookup table of the metadata then that denotes a physical inconsistency and MD Doctor will delete that orphan entry. 

Note: MD Doctor is not a supported tool for MicroStrategy 10.x metadatas.
NOTE:  MD Doctor should be used only after a metadata backup has been taken.  MD Doctor should not be used repeatedly.  It is meant to primarily serve as a quick-fix to physical inconsistencies and get environments up and running.  If repeated use of MD Doctor is needed then a possible recurrent-metadata physical inconsistency is being encountered.  
MSTR WARNING:
Manually editing values in the MSTR Metadata incorrectly may cause serious, project-wide problems that may make your project unusable. Since these are user-initiated changes, they are not covered by any MicroStrategy warranty. Users are strongly encouraged to backup the metadata prior to any alteration.
Pre-Requisites for using MD Doctor:
The following are pre-requisites for the use of MD Doctor:
  • MicroStrategy Developer 9.4.x - 9.5.x installed.  The product and metadata versions should match exactly.
  • Direct (2-tier) Project Source to the target Metadata. 
MD Doctor Best Practices
Remember the following Best Practices when running MD Doctor:
  • Running MD Doctor should not be a routine operation.  MD Doctor is meant to be used as a fix once Technical Support identifies that there is a metadata physical inconsistency causing an issue in the platform.
  • Before running MD Doctor (fix/scan mode), all operations against the metadata should be stopped.
  • Before running MD Doctor (fix mode), a backup of the metadata must be taken. 
  • Always save the MD Doctor logs.

Using Metadata Doctor:
  1. Run the setup.exe and follow installations instructions.
  2. Go to the Start menu and look for the MD Doctor executable under MicroStrategy -> Tools
  3. Select the Direct MicroStrategy data source which points to the metadata to be checked. If a direct data source to the metadata does not exist, use MicroStrategy Developer or MicroStrategy Configuration Wizard to create one before running this application.


    Metadata Login-- Connection information to the actual metadata repository. Login and Table Prefix are read from the select Direct Datasource created through Desktop.  The user must specify a password.

    Data Source Login-- MicroStrategy login and password in order to be able to check the metadata translations table.    
  4. Select Detect and Fix options:
    Detect only. Do not fix errors -- Also known as running MD Doctor in scan-mode.
    Prompt me to fix errors-- Also known as running MD Doctor in fix-mode.  Every time an error is encountered the user will be prompted to fix it.  Used for targeted fixes.
    Fix all errors automatically -- Also known as running MD Doctor in fix-mode.  No prompts to the user when an error is encountered. Used for fixing all encountered inconsistencies. 

    IMPORTANT:  Users should always backup their entire metadata before allowing Metadata Doctor to fix any inconsistencies. 

    Log File-- The location of the log file.  MD Doctor produces a detailed log file that records metadata statistics, errors log and actions taken; moreover it can include the SQL run against the metadata when the Include SQL in log file option is enabled. By default, the log file is generated in the same directory where the MD Doctor executable resides. A new log is created each time MD Doctor is run, and the log file name has a timestamp of the corresponding execution.

  5. Select the 'Start' button to begin. MD Doctor may be interrupted by clicking on the 'Stop' button. However, do not stop/interrupt MD Doctor while it is fixing inconsistencies in the metadata.
  6. A Status window will appear to display the checks performed by MDf Doctor:



Comments

Popular posts from this blog

Derived metric based on attribute values

Derived metric based on attribute values Here is how could create and display data correctly on using below simple steps.  Create a report with Category, Subcategory and Revenue. Create New Metric in a report or VI.  Case((Category@ID = 1), Revenue, 0) Booksand Name it as Revenue for  where 2 is Category ID for "Books"  Report will display result as below.  Result for new metric is blank. Now to fix this create a new Derived metric on Category attribute first with formula as  Max(Category) {~ }  and calling Books Now Edit the "Revenue for Books metric and Replace Category@ID with this new Books metric formula would looks like this  Case((Books = 1), Revenue, 0).  Report result would now display as expected as shown below

Transaction Services - Configure Transactions

Configure Transactions in MSTR Web Transaction Services-enabled document displayed on an iPhone, iPad, or Android device can allow users to insert/update/delete data in to the database, using the options in the Configure Transactions Editor. To do so, you must link a Transaction Services report to a grid or to text fields in a panel stack. If the document is being displayed on an iOS device, you can link the report to the cells of a transaction table. Data from the input objects defined in the Transaction Services report is displayed in the grid, text fields, or cells for users to edit. Prerequisites:        Ø   You must have the Web Configure Transaction privilege assigned by MSTR user admin. Ø   Create the Transaction Services report (usually a grid report) you want to link to the grid, text fields, or transaction table cells. Make sure that the Transaction Services report must contain the input object for each value you w...

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...

Web URL to Connect to the Web/Mobile Administrator page in MicroStrategy Cloud

Web URL to C onnect to the Web/Mobile Administrator page in MicroStrategy Cloud Environment   To access the Web/Mobile Administrator page in MicroStrategy Cloud,  you could use the following URLs to connect (where " machinename " refers to the actual machine name of the corresponding I-server/Web-server):   Web Administrator :   https://machinename:8443/MicroStrategy/servlet/mstrWebAdmin   Mobile Administrator :    https://machinename:8443/MicroStrategyMobile/servlet/mstrWebAdmin  

Prompt-in-prompt (Nested prompt) feature in a FreeForm SQL Report

Prompt-in-prompt (Nested prompt) feature in a FreeForm SQL Report In some business scenarios, it is required to implement prompt-in-prompt (nested prompt) feature to use the answer of one prompt to qualify on the elements of another prompt in Freefrom SQL reports in MicroStrategy Developer 9.4.x-10.x. The following procedure describes how to achieve prompt-in-prompt in a Freeform SQL report in MicroStrategy Tutorial project: Create a new filter, select Add an Attribute qualification and choose the highest level attribute Country. Make sure to Qualify On: Elements. Click Prompt as the image shown below. Accept all the default values without any changes in the popped up window after clicking on "Prompt" as shown below. Save the filter as "Country Filter". Click "Prompt", choose "Use a filter to reduce the number of elements" option and select Country Filter created in last step, as shown below. Save the filter as "Region Filter...

Retrieve a list of user groups and the associated users in MicroStrategy Developer 9.x / 10.x

Retrieve a list of user groups and the associated users in MicroStrategy Developer Follow the steps below to create a list of all groups and the users in each group: In MicroStrategy Developer 9.x, select 'Project Documentation' from the Tools menu to start the wizard. Select any project that is in the project source that contains the users and groups and click Next. Select only Configuration Objects for documentation. Uncheck the 'Basic Properties' object category from the next screen, as shown below: Then select only 'User Group' under the Configuration Objects section and only 'Groups' and 'Members' under the Definition section, as shown below: Go through the rest of the wizard, and open the resulting documentation. After navigating down to the User Groups, the documentation should look similar to the following image: This page shows every group, any child groups, and all members of each group.

System Manager workflow to execute on a schedule

Creating a System Manager workflow to execute on a schedule System Manager workflow can execute on a schedule or after an event has been triggered. This can be accomplished by creating a simple batch file, and scheduling that batch file to execute with a third-party tool like Microsoft Task Scheduler.   Note : To avoid user permission conflicts, the following steps must be performed with highest privileges.   In the below example, the workflow makes the i-server restarts every day.   1. The user must first have a valid workflow. This particular workflow is a template that is delivered out-of-the-box with System Manager.   2. Save the workflow in  .smw  format.   3. In a text editor (such as Notepad), enter the command line statement that the task scheduler should execute.     MASysMgr.exe -w C:\filename.smw” “UserName=User1 “Password=1234”   4. Save the file in  .bat  ...

Microstrategy "Error type: Odbc error. Odbc operation attempted

 "Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [HYT00:0: on SQLHANDLE] [MicroStrategy][ODBC Oracle Wire Protocol driver]Timeout expired" is shown when executing reports from Web When users are trying to execute some reports in MicroStrategy web in particular, they may receive the Error “SQL Generation Complete Index out of range” and “Timeout expired” error as shown below: Possible Causes: One possible cause is that the MicroStrategy Intelligence Server using a cached database connection that was already dropped by the RDBMS. To resolve this: Admin should delete the database connection caches and create a new DSNs in case they are sharing DSNs to connect to different databases. In addition, change the settings for the ‘Connection lifetime’ and the ‘Connection idle time out’.  Follow the steps below to perform the mentioned changes and verify the report after each step and some of the settings require i-server r...

Replace object names in bulk using MicroStrategy Repository Translation Wizard

Replace object names in bulk using MicroStrategy Repository Translation Wizard Users may need to replace  object names  in bulk.  This can be done using MicroStrategy Repository Translation Wizard in MicroStrategy Developer 9.4.x - 10.x.  Follow the steps below for an example of how to do this.  Create an empty MD shell in Microsoft Access.  Run Repository Translation Wizard from the Start Menu -> Programs -> MicroStrategy-> Object Manager In the "Metadata Repository" screen, select the "Project Source Name" and check the "Export Translations" option, as shown in the following screen shot: In the "Languages" screen, select a project, a translation reference language and a language (choose English as default), as shown in the following screen shot: In the "Select objects" screen, if one needs to select a certain type of object, check the option  Use the results of a search object .  Then, click 'New' to...

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...