Tabella dbModel.access

La tabella dbModel.access configura l'accesso al database.

La seguente tabella mostra lo schema per la tabella di database dbModel.access .

Tabella 1. dbModel.access schema tabella database

Nome colonna

Vincoli

Tipo di dati

Descrizione

EnumGroupFilter NOT NULL Testo Elenca i gruppi di enumerazioni contenenti le enumerazioni che è possibile utilizzare nelle mappe di entità definite nella tabella dbModel.entityMap. Le enumerazioni sono definite nella tabella enumerations nel database della topologia NCIM.
TransactionLength NOT NULL Numero intero Il numero di istruzioni SQL da eseguire all'interno di una singola transazione durante il caricamento della topologia prima del commit.
WebTopDataSource NOT NULL Testo Il nome dell'origine dati Webtop da utilizzare. Questo valore può essere diverso dal nome ObjectServer.
DomainHost   Testo Il nome host a cui si connette Topoviz. È impostato nella voce per ncp_config nel file di configurazione ServiceData.cfg. Questo campo deve essere lasciato vuoto, a meno che non sia necessario sovrascrivere questo valore.
DomainPort   Numero intero La porta a cui si connette Topoviz. È impostato nella voce per ncp_config nel file di configurazione ServiceData.cfg. Questo campo deve essere lasciato vuoto, a meno che non sia necessario sovrascrivere questo valore.

Esempio: utilizzo di un filtro del gruppo di enumerazione e della mappa di entità

Nella tabella workingEntities.finalEntity, il tipo di interfaccia OSPF viene memorizzato nell'elenco enumerato m_OspfIfState, contenuto nel campo m_ExtraInfo. Il valore del campo m_OspfIfState è un singolo numero intero, ad esempio 3. m_OspfIfState corrisponde a ospfIfState nel database della topologia NCIM. Le enumerazioni per ospfIfState sono definite per enumGroup ospfIfType nella tabella enumerations nel database NCIM, come mostrato nel seguente output di esempio:

> select * from enumerations where enumGroup = 'ospfIfType';
> go
+------------+---------+-------------------+-----------------+
| ENUMGROUP  | ENUMKEY | ENUMVALUE         | ENUMDESCRIPTION |
+------------+---------+-------------------+-----------------+
| ospfIfType | 1       | broadcast         |                 |
| ospfIfType | 2       | nbma              |                 |
| ospfIfType | 3       | pointToPoint      |                 |
| ospfIfType | 5       | pointToMultipoint |                 |
+------------+---------+-------------------+-----------------+

Il seguente inserimento di esempio include ospfIfType (visualizzato qui in grassetto) nelle enumerazioni da scaricare:

insert into dbModel.access
(
    EnumGroupFilter,
    TransactionLength,
    WebTopDataSource
)
values
(
    "enumGroup in ('ASN' , 'sysServices', 'ifAdminStatus', 'ifOperStatus', 
    'sysServices',  'ifType', 'ifOperStatusToOperationalStatus',
    'entPhysicalClass', 'cefcFRUPowerAdminStatus', 'cefcFRUPowerOperStatus', 
    'TruthValue','TruthValueString', 'entSensorType', 'entSensorScale', 
    'entSensorStatus', 'cefcModuleAdminStatus', 'cefcModuleOperStatus', 
    'ipForwarding', 'cefcPowerRedundancyMode', 'EntityType', 'ospfIfState', 
    'ospfIfType', 'dot3StatsDuplexStatus', 'accessProtocol', 'cdmDuplex', 
    'OperationalStatusEnum')",
    500,
    "NCOMS"
);

Nel seguente esempio di inserimento nel database dbModel.entityMap, m_ospfIfType (visualizzato in grassetto) dalla tabella workingEntities.finalEntity viene associato alla colonna ospfIfType nella tabella ospfEndPoint nel database della topologia NCIM.

insert into dbModel.entityMap
(
    EntityFilter,
    TableName,
    FieldMap,
    StitcherDefined
)
values
(
    "m_ObjectId = 'OSPF_PROTOCOL_ENDPOINT'",
    'ospfEndPoint',
    {
        entityId         = "eval(int,  '&m_EntityId')",
        areaId           = "eval(text, '&m_ExtraInfo->m_AreaId')",
        ospfIfAdminStat  = "eval(int,  '&m_ExtraInfo->m_OspfIfAdminStat')",
        ospfIfState      = "eval(text, 'LOOKUP(&m_ExtraInfo->m_OspfIfState, &&ospfIfState)')",
        ospfIfType  = "eval(text, 'LOOKUP(&m_ExtraInfo->m_OspfIfType, &&ospfIfType)')",
        defaultCost      = "eval(int,  '&m_ExtraInfo->m_Cost')"
    },
    1
);

Poiché l'enumerazione per ospfIfType è stata scaricata, il valore intero di ospfIfType dalla tabella workingEntities.finalEntity viene associato a una stringa significativa nel record nel database della topologia NCIM. Ad esempio, invece di 3, il valore per il tipo di interfaccia viene memorizzato come pointToPoint.