Checking the Repository

Step 2 in Example of Troubleshooting the Import of Extension Columns asks you to run the DBCHCK utility to make sure the EIM table in the repository is in synch with the EIM table in the database.

Both the DBCHCK and DICTUTL utilities are run from the DOS prompt in the siebsrvr\bin\ directory. DBCHCK verifies that the physical schema is in synch with the repository. DICTUTL verifies that all dock objects and rule definitions are correct.

To check the repository using DBCHCK and DICTUTL

  1. Run the siebenv.bat file to make sure that the Siebel application environment variables are set correctly.

    Note: There should be no quotes around the parameters in siebenv.bat.
  2. Make sure there are no quotes around the value to which SIEBEL_REPOSITORY is set.

    If this value is set incorrectly, you will encounter error messages.

  3. Run the DBCHCK utility to verify that the physical schema is in synch with the repository. A typical command to run DBCHCK and generate a log file is the following:

    Prompt>dbchck /S <ODBC_DATASOURCE> /U <USERNAME> /P <PASSWORD> /T <TABLE OWNER> 
    /R <REPOSITORY> /L <LOGFILE> /D <CHECK_AGAINST_DICTIONARY> /A <ALL_TABLES> 
    
    1. Use the /A option to specify whether you are running the DBCHCK against all tables; use a Boolean ‘Y’ (no quotation marks) to specify that you are.

    2. To view all of the options for DBCHCK, run DBCHCK at the DOS prompt without any options.

      This provides all the options that can be used in conjunction with DBCHCK. The following are some of the common options used in conjunction with DBCHCK:

      Option

      Description

      /S

      Specifies the ODBC source to use for the database.

      /U

      Specifies the username to log in to the database.

      /P

      Specifies the user password to log in to the database.

      /T

      Specifies the username of the table owner.

      /R

      Specifies the repository name for the dictionary.

      /L

      Specifies the log file name for errors.

      /D

      Checks tables against the dictionary only.

      /A

      Checks all Siebel tables in the database.

    3. Check the <LOGFILE> for unacceptable errors.

      Unacceptable errors may occur if data types are mismatched. Acceptable errors may occur if a schema object (such as a table or an index) is intentionally external to the repository.

  4. Run DICTUTL to verify that all dock objects and rule definitions are correct. A typical command to run DICTUTL and generate a log file is the following:

    Prompt>dictutl /C <ODBC_DATASOURCE> /U <USERNAME> /P <PASSWORD> /D <TABLEOWNER> 
    /N <REPOSITORY_NAME> /A <IGNORE_DICTONARY_CACHE> y > LOGFILE.log 
    

    Further command options are explained as follows:

    Option

    Description

    /A

    Y means ignore the dictionary cache.

    > LOGFILE.log

    LOGFILE is the log file that you designate for DICTUTL.

  5. Review the LOGFILE.log file to check for errors.