AbstractDBObject - Global

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 1 min. de leitura
  • . AbstractDBObject a inclusão de script fornece métodos comuns para classes com base em registros no banco de dados.

    Use esta inclusão de script como uma classe base para criar sua própria classe de objeto de banco de dados.

    AbstractDBObject - isValid()

    Determina se o registro do banco de dados atual é válido.

    Consulte também IPService - Global.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 2. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o registro do banco de dados for válido, caso contrário, falso.

    Sinalizador que indica se o registro do banco de dados é válido.

    Valores válidos:
    • Verdadeiro: O registro do banco de dados é válido.
    • Falso: O registro do banco de dados é inválido.

    O exemplo a seguir mostra como obter uma lista de instâncias válidas usando a classe IPService() da tabela Serviços IP [cmdb_ip_service]. A classe IPService estende a classe AbstractDBObject().

    /**
     * IPService class Encapsulates the notion of an IP Service. Instances in which isValid() returns true have the 
     * following properties initialized: 
     *  sysID:       sys_id of this record
     *  port:        the TCP or UDP port used by the service
     *  protocol:    protocol used by the service ("UDP", "TCP", or "TCP/UDP")
     *  name:        short name or handle
     *  serviceName: long, descriptive English name
     *  creates:     table that this service creates entries in
     *  description: description
     */
    
    var result = [];
    // Array of sys_id's from the IP Service class which we want to get the abstract details
    var list = ['db9840e10ab3015500f5e3fe8f78da42', 'a1505ebc7782330099808d1168106179', 'abc05ebc7782330099808d1168106112'];
    
    // query for the records on the list
    var ipservice = new GlideRecord('cmdb_ip_service');
    ipservice.addQuery('sys_id', 'IN', list.toString());
    ipservice.query();
    while (ipservice.next()) {
        var ip = new IPService(ipservice); // IPService class extends AbstractDBObject class and this class 
        if (ip.isValid())      // check whether the record is valid or not
            result.push(ip);   // if valid get the properties for 
    }
    
    gs.info(JSON.stringify(result, null, 2));

    Saída:

    [
      {
        "valid": true,
        "sysID": "a1505ebc7782330099808d1168106179",
        "port": "8882",
        "protocol": "TCP",
        "name": "blkbry-uem-enroll",
        "serviceName": "Blackberry Enrollment Request",
        "creates": null,
        "description": null
      },
      {
        "valid": true,
        "sysID": "db9840e10ab3015500f5e3fe8f78da42",
        "port": "548",
        "protocol": "TCP",
        "name": "afp",
        "serviceName": "Apple File Protocol",
        "creates": null,
        "description": null
      }
    ]