Validating a ConnectionConfigurationMap.ccm file : ccmReader

When setting up a G/Technology environment, one of the boring things always is getting your ConnectionConfigurationMap.ccm right. One way to see what ddc-file is causing you trouble is use sysinternals Process Monitor tool and see what the last ddc-file read by the G3E-executable was. The next file immediately following that file in your ConnectionConfigurationMap.ccm then is the cause of your problem. This approach works but is very boring and can take a lot of time. Therefore, I created a tool called ‘ccmReader’ which stands for ConnectionConfigurationMap Reader and its soal purpose is to check the validness of a ConnectionConfigurationMap.ccm file.

CcmReader’s usage is as follows :


ccmReader [-v] [-l] [-c CONF] [-dumplang] [-showlang] [-help] ConnectionConfigurationMap.ccm

So what does it do ? Let’s say you have the following ConnectionConfigurationMap.ccm section and the F152-DetailVerwijzing.ddc file is missing:


MAPFILE=d:MAPFILESGEOSDDC9.4F148-Oov.ddc;
MAPFILE=d:MAPFILESGEOSDDC9.4F159-Waterkruising.ddc;
MAPFILE=d:MAPFILESGEOSDDC9.4F152-DetailVerwijzing.ddc;
MAPFILE=d:MAPFILESGEOSDDC10.1F252-InfraLand.DDC;
MAPFILE=d:MAPFILESGEOSDDC10.1F252-InfraLand_1.DDC;

CcmReader then would output the following :

DDC file is missing

DDC file is missing

The output tells you that there are two files which should be present according to the ConnectionConfigurationMap.ccm file but could not be read : d:MAPFILESGEOSDDC9.4F152-DetailVerwijzing.ddc and d:MAPFILESGEOSDDC9.4F152-DetailVerwijzing.cdt. So without even trying to start G/Designer, Netviewer or G/Netplot you know it will not work since your configuration is wrong and you need to fix it. Once you have corrected the errors and each file can be found, the tool will not output anything unless you used the verbose (-v) flag :

Verbose option

Verbose option

I use this tool very often in my day-to-day work, and it comes in very handy.

You can download the executable here.

Hope this helps, Stephan

This entry was posted in G/Technology and tagged , , , . Bookmark the permalink.

2 Responses to Validating a ConnectionConfigurationMap.ccm file : ccmReader

  1. anand priyadarshi says:

    we have just installed g-tech Software in our system we have the setup path in registry for .ccm file having the following contents:.

    CONFIGURATION_NAME=GTECH_DEV;
    ALIAS=DB_ALIAS;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\FeatureComponentMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\LegendMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\DialogAttributeMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\RelationshipMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\PlacementMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\AnalysisIntegrationMetadata.ddc;
    MAPFILE=C:\GTECH\MAPFILES\GDEV\GDEV9S\Metadata\PicklistMetadata.ddc;

    we are not able to find ddc file in the setup or at the installed path of G-tech please help me generating these files. If you can give sample .ddc file that will be much help to us.

    Thanks in Advance
    Anand

    • Stephan Deckers says:

      You can use the Process Monitor tool from SysInternals to see what files GTech is looking for. Also, creating ccm files can be tedious and it helps if you automate the component-view part of it using SQL-statements. The following statement will output the component-view part of your ConnectionConfiguration.ccm :


      select 'MAPFILE=[C:\DDC\CRS\DATA]'|| g3e_view ||'.ddc', 'VIEWS='|| g3e_view from g3e_Componentviewdefinition, g3e_Component
      where g3e_Componentviewdefinition.G3E_CNO=g3e_Component.G3E_CNO
      and g3e_Component.G3E_DcNO=1;

      Here’s an example of a valid ddc file :


      CONFIGURATION_NAME=NL_RDNAP;
      ALIAS=ORCL;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_AFSLUITER.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_ASSET.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_DIMENSIONING.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_KBFEATURES.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_KLIC.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_LENGTHPROFILE.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_MISCELLANEOUS.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_NIEUWBOUWOPERATIE.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_OMGEVING.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Intern\G_PLOTTING.DDC;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_6PPC.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_Bevolkinggrid.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_BEBOUW_B01.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_BEBOUW_LB.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_BEBOUW_LN.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_BEBOUW_PT.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_TERREIN_LB.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_TERREIN_LN.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_TERREIN_PT.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WATER_LB.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WATER_LN.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WATER_PT.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WEG_LB.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WEG_LN.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WEG_PT.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WEG_V00_1.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_GBKN_WEG_V00_2.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_Luchtfotos.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_Multinet.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_NieuweKaart.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_ToekomstigeTopo.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_TOP10NL.ddc;
      MAPFILE=C:\Mapfiles\Eagle\DDC\NL_RDNAP.Extern\E_TOP25RASTER.ddc;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\ANALYSISINTEGRATIONMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\DIALOGATTRIBUTEMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\FEATURECOMPONENTMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\LEGENDMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\PLACEMENTMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\RELATIONSHIPMETADATA.DDC;
      MAPFILE=C:\Mapfiles\Eagle\Metadata\PicklistMetadata.DDC;

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>