Classe NowTableService - iOS

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 73 min. de leitura
  • . NowTableService a classe fornece funções que permitem executar operações de criação, leitura, atualização e exclusão em registros de existentes ServiceNow tabelas.

    Tabela 1. Propriedades
    Nome Tipo Descrição
    configuração NowServiceConfiguration Definições de configuração fornecidas quando o serviço foi inicializado.

    NowTableService - create<Model: SysIdentifiableModel>(_ model: Model, em tablename: Cadeia de caracteres, codificador: Codificador, writeOptions: FieldWriteOptions, configuração: FetchConfiguration) lançamentos assíncronos

    Insere o modelo codificável especificado na tabela especificada.

    Para criar um novo registro por modelo, o modelo deve estar em conformidade com SysIdentifiableModel protocolo. Normalmente, cada tabela terá seu próprio modelo.

    Do modelo sys_Ido parâmetro é ignorado durante a criação como sysIdgerado pelo ServiceNow plataforma. . ServiceNow plataforma gerada sys_Idé retornado em completionmanipuladores Resultado modelo.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    modelo SysIdentifiableModel Definição do modelo dos campos a serem inseridos na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 3. Retornos
    Tipo Descrição
    Modelo Retornado quando o método é bem-sucedido. Modelo passível de codificação que foi inserido na tabela especificada, incluindo o sys_id. Use este sys_id para fazer referência a este registro em chamadas de método futuras.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    O exemplo de código a seguir mostra como chamar este método.

    struct User: SysIdentifiableModel {
        var sysId: String = ""
        var name: String
    }
    
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    do {
        let result = try await service.create(user, in: “sys_user”)
    } catch {
        ...
    }

    NowTableService - create<Model: SysIdentifiableModel>(_ model: Model, em tablename: Cadeia de caracteres, codificador: Codificador, writeOptions: FieldWriteOptions, configuração: FetchConfiguration, escape (<Model, NowDataError>))

    Insere o modelo codificável especificado na tabela especificada e executa o. completionmanipulador.

    Para criar um novo registro por modelo, o modelo deve estar em conformidade com SysIdentifiableModel protocolo. Normalmente, cada tabela terá seu próprio modelo. Por exemplo:
    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    service.create(Incident(fields: fields), in: tableName, writeOptions: writeOptions, configuration: fetchConfiguration) { [weak self] result in
      switch result {
      case .success(let newUser):
        /// 'newUser' contains the platform assigned 'sys_id', use in subsequent 'update' or 'delete' calls.
      case .failure(let error):
          ...
      }
    }

    Do modelo sys_Ido parâmetro é ignorado durante a criação como sysIdgerado pelo ServiceNow plataforma. . ServiceNow plataforma gerada sys_Idé retornado em completionmanipuladores Resultado modelo.

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    modelo SysIdentifiableModel Definição do modelo dos campos a serem inseridos na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusão Escape (<Model, NowDataError>) Manipulador de conclusão a ser executado após a criação dos modelos decodificáveis especificados.
    Valores de retorno para o manipulador de conclusão:
    • Modelo - Dados do tipo de modelo criado.
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 5. Retornos
    Tipo Descrição
    Nenhum

    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    service.create(Incident(fields: fields), in: tableName, writeOptions: writeOptions, configuration: fetchConfiguration) { [weak self] result in
      switch result {
      case .success(let newUser):
        /// 'newUser' contains the platform assigned 'sys_id' to use in subsequent update or delete calls.
      case .failure(let error):
       ...
      }
    }

    NowTableService - create<Model: SysIdentifiableModel> model: Model, em tablename: Cadeia de caracteres, caminho: Cadeia de caracteres.ResultPath, codificador: .Default, writeOptions: FieldWriteOptions? (Configuração: FetchConfiguration: Nil)

    Insere um modelo passível de codificação na tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    Para criar um novo registro por modelo, o modelo deve estar em conformidade com SysIdentifiableModel protocolo. Normalmente, cada tabela terá seu próprio modelo. Por exemplo:
    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    service.create(Incident(fields: fields), in: tableName, writeOptions: writeOptions, configuration: fetchConfiguration) { [weak self] result in
      switch result {
      case .success(let newUser):
        /// 'newUser' contains the platform assigned 'sys_id', use in subsequent 'update' or 'delete' calls.
      case .failure(let error):
          ...
      }
    }
    Nota:
    Do modelo sys_Ido parâmetro é ignorado durante a criação. . sysIdatribuído pelo ServiceNow plataforma. . ServiceNow plataforma gerada sys_Idé retornado no fornecedor ReceiveValue modelo de retorno de chamada.
    Tabela 6. Parâmetros
    Nome Tipo Descrição
    modelo SysIdentifiableModel SysIdentifiableModel modelo a ser inserido na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    caminho Cadeia de caracteres Opcional. Caminho separado por pontos para o tipo aninhado. Por exemplo, resultado ou baz.barra.foo para aninhamento mais profundo.

    Padrão: Constants.resultPath

    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 7. Retornos
    Tipo Descrição
    AnyPublisher<Model,NowDataError> Modelo passível de codificação que foi inserido na tabela especificada, incluindo sys_Id. Use este sys_id para fazer referência a este registro em chamadas de método futuras.

    NowDataError

    Escape (<Model, NowDataError>)

    Mostra como inserir um único registro na tabela Usuário [sys_user].

    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    let publisher: AnyPublisher<User, NowDataError> = service.create(user, in: "sys_user")
    publisher
      .subscribe(on: DispatchQueue.global())
      .receive(on: DispatchQueue.main)
      .sink { [weak self] completion in
        ...
      } receiveValue: { [weak self] newUser in
          /// 'newUser' contains the ServiceNow platform assigned 'sys_id' to use in subsequent update and delete calls.
         ...
      }
      .store(in: &subscriptions)

    NowTableService - createRecord(com campos: [Fieldname: FieldValue], em tablename: Cadeia de caracteres, writeOptions: FieldWriteOptions? Configuração: FieldReadConfiguration? lançamentos assíncronos

    Insere um registro na tabela especificada que contém os campos especificados.

    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 8. Parâmetros
    Nome Tipo Descrição
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 9. Retornos
    Tipo Descrição
    Dados Retornado quando o método é bem-sucedido. Objeto de dados que contém o novo registro.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    do {
        let dataResult: Data = try await tableService.createRecord(with: fields, in: tableName, writeOptions: writeOptions, configuration: configuration)
        let recordResult: NowRecord = dataResult.convertToRecord()
    } catch {
        print("Record creation failed with NowDataError: \(error)")
    }

    NowTableService - createRecord(com campos: [Fieldname: FieldValue], em tablename: Cadeia de caracteres, writeOptions: FieldWriteOptions, configuração: FieldReadConfiguration, conclusão: NowDataError>)

    Insere o registro especificado na tabela especificada e executa o. completionmanipulador depois que o registro é salvo.

    Se necessário, você pode decodificar os resultados de retorno em um modelo codificado personalizado ou pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) em vez disso. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 10. Parâmetros
    Nome Tipo Descrição
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FieldReadConfiguration Opcional. Opções de configuração que especificam quais campos retornar e o que incluir nos campos.

    Padrão: Nil

    conclusão Escape (<Data, NowDataError>) Manipulador de conclusão a ser executado depois que os registros forem recuperados.
    Valores de retorno:
    • Dados - Registros solicitados
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 11. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta função.

    let fields = ["short_description" : "test description"]
    let writeOptions: FieldWriteOptions = [.suppressAutoSysField, .treatInputValuesAsDisplayValues]
    let readConfiguration = FieldReadConfiguration(includeFields: ["number", "short_description"])
    
    tableService.createRecord(with: fields, in: tableName, writeOptions: writeOptions, configuration: readConfiguration) { [weak self] result in
      switch result {
        case .success(let dataResult):
          let recordResult: NowRecord = dataResult.convertToRecord()
        case .failure(let error):
           print("Record creation failed with NowDataError: \(error)")
      }
    }

    NowTableService - createRecord(com campos: [Fieldname: FieldValue], em tablename: Cadeia de caracteres, writeOptions: FieldWriteOptions? Configuração: FieldReadConfiguration? nulo)

    Insere um registro na tabela especificada que contém os campos especificados.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 12. Parâmetros
    Nome Tipo Descrição
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 13. Retornos
    Tipo Descrição
    AnyPublisher<Data, NowDataError> Objeto de dados que contém o registro atualizado.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como criar uma função que insere um registro na tabela especificada, com os campos especificados. A saída da chamada é um ByteArray que permite converter os dados em qualquer modelo desejado.

    tableService.createRecord(with: fields, in: tableName, writeOptions: writeOptions, configuration: readConfiguration)
        .subscribe(on: DispatchQueue.global())
        .receive(on: DispatchQueue.main)
        .convertToRecord()
        .sink { completion in
            if case let .failure(error) = completion {
                print("Record creation failed with NowDataError: \(error)")
            }
        } receiveValue: { record in
            print("Created NowRecord: \(record)")
        }
        .store(in: &subscriptions)

    NowTableService - delete(_ model: Model, from tablename: String) lançamentos assíncronos

    Exclui o modelo codificável especificado da tabela especificada.

    Tabela 14. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel para excluir da tabela. Ele deve conter o sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    Tabela 15. Retornos
    Tipo Descrição
    Nenhum(a) Nada retornado quando o método é bem-sucedido.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    do { 
        try await tableService.delete(model, from: tableName)
        print("Deletion successful.")
    } catch {
        print("Deletion failed with NowDataError: \(error)")
    }

    NowTableService - delete(_ model: Model, from tablename: Cadeia de caracteres, conclusão: Escape (<Void, NowDataError>))

    Exclui o modelo codificável especificado da tabela especificada e executa o apropriado completionmanipulador.

    Tabela 16. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel para excluir da tabela. Ele deve conter o sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    conclusão Escape (<Void, NowDataError>) Manipulador de conclusão a ser executado após a exclusão dos modelos codificáveis especificados.
    Valores de retorno:
    • Êxito: Nada retornado
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 17. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta função.

    tableService.delete(Incident(sysId: sysId), from: tableName) { [weak self] result in
      switch result {
        case .success:
          // Delete successfully
        case .failure(let error):
          // Failed to delete with NowDataError
      }
    }

    NowTableService - delete(_ model: Model, from tablename: Cadeia de caracteres)

    Exclui o modelo codificável especificado da tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    Tabela 18. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel para excluir da tabela. Ele deve conter o sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    Tabela 19. Retornos
    Tipo Descrição
    AnyPublisher<Void, NowDataError> Êxito: Nada retornado

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    O exemplo de código a seguir mostra como chamar esta função.

    tableService.delete(Incident(sysId: sysId), from: tableName)
      .subscribe(on: DispatchQueue.global())
      .receive(on: DispatchQueue.main)
      .sink { [weak self] completion in
        switch completion {
          case .finished:
            // Delete successfully
          case .failure(let error):
            // Failed to delete with NowDataError
        }
      } receiveValue: { _ in
      }
      .store(in: &subscriptions)
    

    NowTableService - deleteRecord(SYSID: SYSID, de tablename: Cadeia de caracteres) lançamentos assíncronos

    Exclui o registro especificado da tabela especificada.

    Tabela 20. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    Tabela 21. Retornos
    Tipo Descrição
    Nenhum(a) Nada retornado quando o método é bem-sucedido.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    do {
        try await tableService.deleteRecord(sysId: sysId, from: tableName)
        print("Deletion successful.")
    } catch {
        print("Deletion failed with NowDataError: \(error)")
    }

    NowTableService - deleteRecord(SYSID: SYSID, de tablename: Cadeia de caracteres, conclusão: Escape (<Void, NowDataError>))

    Exclui o registro especificado da tabela especificada e executa o. completionobjeto após a exclusão do registro.

    Tabela 22. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    conclusão Escape (<Void, NowDataError>) Êxito: Nada é retornado.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Tabela 23. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar esta função.

    tableService.deleteRecord(sysId: sysId, from: tableName) { [weak self] result in
      switch result {
        case .success:
          // Delete successfully
        case .failure(let error):
          // Failed to delete with NowDataError
      }
    }

    NowTableService - deleteRecord(SYSID: SYSID, de tablename: Cadeia de caracteres)

    Exclui o registro especificado da tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    Tabela 24. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser excluído.
    Do tablename Cadeia de caracteres Nome da tabela da qual as informações serão excluídas, como incidente .
    Tabela 25. Retornos
    Tipo Descrição
    AnyPublisher<Void, NowDataError> Êxito: Nada retornado

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como criar uma função que exclui um registro em uma tabela especificada.

    tableService.deleteRecord(sysId: sysId, from: tableName) 
        .subscribe(on: DispatchQueue.global())
        .receive(on: DispatchQueue.main)
        .sink { completion in
            switch completion {
            case .finished:
                print("Record deleted.")
            case .failure(let error):
                print("Deletion failed with NowDataError: \(error)")
            }
        } receiveValue: { _ in }
        .store(in: &subscriptions)

    NowServiceTable - init(configuração: NowServiceConfiguration, coreServiceProvider: NowCoreServiceProviding? nulo)

    Cria um objeto NowTableService.

    Tabela 26. Parâmetros
    Nome Tipo Descrição
    configuração NowServiceConfiguration Parâmetros de configuração a serem usados ao criar o serviço.
    CoreServiceProvider NowCoreServiceProviding Opcional. Provedor de serviço a ser associado ao NowTableService.

    Padrão: Nil

    O exemplo de código a seguir mostra como chamar esta função.

    guard let coreService = NowSDK.core() else {
      // Error with NowServiceError.sdkNotConfigured
      return
    }
    
    guard 
      let instanceUrl = URL(string: "http://sample.service-now.com") , 
      let serviceConfig = NowSDK.makeServiceConfiguration(for: instanceUrl) else {
        // Could not create service – 
        // NowServiceError.serviceConfigurationInvalid
        return
      }
    let tableService = NowTableService (configuration: serviceConfig, coreServiceProvider: coreService)

    NowTableService - model<Model: Decodable>(com SYSID: SYSID? Nome da tabela: Cadeia de caracteres, caminho: Cadeia de caracteres Constants.resultPath, codificador: .Default, configuração: FetchConfiguration? lançamentos assíncronos

    Habilita a recuperação de modelos decodificáveis de uma tabela especificada.

    Tabela As respostas de API são aninhadas em um resultparâmetro semelhante ao seguinte:
    {
      "result": [
        { "name": "Ash Williams" },
        { "name": "Lionel Cosgrove" },
        { "name": "Laurie Strode" }
      ]
    }
    Para conjuntos de resultados grandes, use uma das funções de paginador, NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) ou NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) para buscar modelos paginados.
    Tabela 27. Parâmetros
    Nome Tipo Descrição
    Com SYSID SysID Opcional. Sys_id do registro a ser retornado. Forneça o sys_id se quiser recuperar um registro específico.

    Padrão: Nil

    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    caminho Cadeia de caracteres Caminho separado por pontos para o tipo aninhado. Por exemplo, resultado ou baz.barra.foo para aninhamento mais profundo.

    Padrão: resultado

    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 28. Retornos
    Tipo Descrição
    Modelo Retornado quando o método é bem-sucedido. Modelos decodificáveis.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    O exemplo de código a seguir mostra como chamar este método.

    struct User: Codable { 
        var name: String
    } 
    
    let service: NowTableService = ... 
    do {
        let result = try await service.model([User].self, from: "sys_user", path: "result")
        print("Fetched \(users.count) users")
    } catch {
        dump(error) 
    }

    O exemplo de código a seguir mostra como buscar um único modelo decodificável por sys_id. Use um único tipo de modelo, como User.self , em vez de .self .

    let result = try await service.model(User.self, with: "5137153cc611227c000bbd1bd8cd2005", from: "sys_user", path: "result") 

    NowTableService - model<Model: Decodable>(_ type: Model.Type, com SYSID: SYSID? Nome da tabela: Cadeia de caracteres, caminho: Cadeia de caracteres Constants.resultPath, codificador: .Default, configuração: FetchConfiguration? (<Model, NowDataError>)

    Recupera modelos decodificáveis de uma tabela especificada.

    Tabela As respostas de API são aninhadas em um resultparâmetro semelhante ao seguinte:
    {
      "result": [
        { "name": "Ash Williams" },
        { "name": "Lionel Cosgrove" },
        { "name": "Laurie Strode" }
      ]
    }

    Use esta função para obter modelos decodificáveis em vez de saída aninhada.

    Tabela 29. Parâmetros
    Nome Tipo Descrição
    tipo Model.Type Tipo de valor a ser decodificado.
    Com SYSID Cadeia de caracteres Opcional. Sys_id do registro a ser retornado.

    Padrão: Todos os registros retornados de acordo com configurationconfigurações.

    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    caminho Cadeia de caracteres Opcional. Caminho separado por pontos para o tipo aninhado. Por exemplo, resultado ou baz.barra.foo para aninhamento mais profundo.

    Padrão: Constants.resultPath

    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.

    Padrão: .padrão

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusãoEscape (<Model, NowDataError>)Manipulador de conclusão a ser executado após recuperar os modelos decodificáveis especificados.
    Valores de retorno para o manipulador de conclusão:
    • Sucesso: Dados do tipo de modelo solicitado.
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 30. Retornos
    Tipo Descrição
    Nenhum(a)

    Para recuperar uma coleção de decodificados Usermodelos.

    struct User: SysIdentifiableModel {
        var sysId: String = ""
        var name: String
    }
    let service: NowTableService = ...
    let user = User(name: "Ash Williams")
    service.create(Incident(fields: fields), in: tableName, writeOptions: writeOptions, configuration: fetchConfiguration) { [weak self] result in
      switch result {
      case .success(let newUser):
        /// 'newUser' contains the platform assigned 'sys_id', use in subsequent 'update' or 'delete' calls.
      case .failure(let error):
       ...
     }
    }

    Para buscar um único modelo decodificável por sys_id, use um único tipo de modelo, como User.self , em vez de .self .

    service.model(User.self, with: "5137153cc611227c000bbd1bd8cd2005", from: "sys_user", path: "result") { resultin ... }

    NowTableService - model<Model: Decodable>(com SYSID: SYSID? Nome da tabela: Cadeia de caracteres, caminho: Cadeia de caracteres Constants.resultPath, codificador: .Default, configuração: FetchConfiguration? nulo)

    Cria um fornecedor que permite a recuperação de modelos decodificáveis de uma tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    Tabela As respostas de API são aninhadas em um resultparâmetro semelhante ao seguinte:
    {
      "result": [
        { "name": "Ash Williams" },
        { "name": "Lionel Cosgrove" },
        { "name": "Laurie Strode" }
      ]
    }
    Para conjuntos de resultados grandes, use uma das funções de paginador, NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) ou NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) para buscar modelos paginados.
    Tabela 31. Parâmetros
    Nome Tipo Descrição
    Com SYSID SysID Opcional. Sys_id do registro a ser retornado. Forneça o sys_id se quiser recuperar um registro específico.

    Padrão: Nil

    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    caminho Cadeia de caracteres Caminho separado por pontos para o tipo aninhado. Por exemplo, resultado ou baz.barra.foo para aninhamento mais profundo.

    Padrão: resultado

    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 32. Retornos
    Tipo Descrição
    AnyPublisher<Model, NowDataError> Fornecedor que retorna um modelo decodificável.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Para obter um fornecedor que forneça modelos de usuário decodificado por tipo, como [Usuários].self , busque os modelos especificando um caminho separado por pontos.

    struct User: Codable {
      varname: String
    }
    
    let service: NowTableService = ...
    let publisher: AnyPublisher<[User], NowDataError> = service.model(from: "sys_user", path: "user.photos.gps_location")
     

    Para buscar um único modelo decodificável por sys_id, use um único User.self tipo de modelo, em vez de .self .

    let publisher: AnyPublisher<User, NowDataError> = service.model(with: "5137153cc611227c000bbd1bd8cd2005", from: "sys_user", path: "result")

    NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo)

    Cria um paginador que permite iterar por páginas de registros.

    Do paginador o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Nota:
    A menos que substituído em configurationum paginador retorna 20 itens por página. Dependendo da avaliação da ACL, o número real de itens obtidos para uma página pode ser menor que o valor padrão ou configurado.
    Tabela 33. Parâmetros
    Nome Tipo Descrição
    tableName Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 34. Retornos
    Tipo Descrição
    Paginator<Data> Objeto do paginador que contém os registros especificados.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    private var tableService: NowTableService?
    // Paginator creation uses type inference to determine the response type.
    private var paginator: Paginator<[CustomerServiceCase]>?
    
    func initializeTableService(for instanceUrl: URL) {
      makeTableService(instanceUrl: instanceUrl) { [weak self] result in
        guard let self = self else { return }
                
        switch result {
        case .success(let tableService):
          self.tableService = tableService
          // Create a paginator that iterates over pages of customer support cases. The paginator's response type is
          // inferred from the paginator's type definition (e.g. `Paginator<[CustomerServiceCase]>`).
          self.paginator = tableService.paginator(from: Self.tableName, configuration: self.fetchConfiguration)
          // Subscribe to the paginator's publisher so you are able to receive paged results.
          self.subscribeToPaginatorPublisher()
          // Ready to start fetching data, inform the view controller.
          self.onReady(self)
        case .failure(let error):
          debugPrint("Creating table service failed with error: \(error.localizedDescription)")
          self.tableService = nil
          self.paginator = nil
        }
      }
    }

    NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo)

    Cria um paginador que permite a iteração de páginas de modelos decodificados que manipulam o aninhamento.

    . ServiceNow REST Tabela As respostas de API são aninhadas em uma propriedade de resultado semelhante à seguinte:
    {
      "result": [
        { "name": "Ash Williams" },
        { "name": "Lionel Cosgrove" },
        { "name": "Laurie Strode" }
      ]
    }
    Para obter um paginador que forneça modelos de usuário decodificados, busque o paginador especificando um caminho separado por pontos; nesse caso, result.
    struct User: Codable {
      varname: String
    }
    
    let service: NowTableService = ...
    let paginator: Paginator<[User]> = service.paginator(from: "sys_user", path: "result")
    Nota:
    A menos que substituído em configurationum paginador retorna 20 itens por página. Dependendo das avaliações de ACL, o número real de itens obtidos para uma página pode ser menor que o valor padrão ou configurado.
    Depois de obter um objeto Paginator, assine o combinar fornecedor para começar a receber dados:
    paginator.publisher
      .subscribe(on: DispatchQueue.global())
      .receive(on: DispatchQueue.main)
      .sink { … }
      .store(in: &subscriptions)
    Nota:
    Tal como acontece com todas as assinaturas de combinação, certifique-se de manter a assinatura para evitar resultados inesperados.
    Tabela 35. Parâmetros
    Nome Tipo Descrição
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    path Cadeia de caracteres Caminho separado por pontos para o tipo aninhado. Por exemplo, resultado ou result.user.photos para aninhamento mais profundo. Especificar um caminho personalizado permite buscar ou iterar dados aninhados .

    Padrão: resultado

    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 36. Retornos
    Tipo Descrição
    Paginator<Data> Objeto do paginador que contém paginador Decodificável modelo(s).

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como obter um objeto Paginator que fornece Modelos de usuário decodificado. Você pode buscar o objeto Paginator desejado insinuando o compilador para retornar uma coleção de Modelos de usuário ([Usuário]) e informando ao objeto Paginator que os usuários estão aninhados abaixo do caminho do resultado.

    struct User: Codable {
      var name: String
    }
    
    let service: NowTableService = ...
    let paginator: Paginator<[User]> = service.paginator(from: "sys_user", path: "result")
    Nota:
    . Tabela A API sempre retorna resultados aninhados abaixo de um caminho de resultado, para que você possa eliminar com segurança o. pathparâmetro.

    NowTableService - registro(com SYSID: SYSID, de tablename: Cadeia de caracteres, configuração: FieldReadConfiguration? lançamentos assíncronos

    Recupera um registro especificado da tabela especificada em um ServiceNow instância.

    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Tabela 37. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 38. Retornos
    Tipo Descrição
    Dados Retornado quando o método é bem-sucedido. Objeto de dados que contém o registro especificado.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    func fetchTableRecord(sysId: String, tableName: String, includeFields: [FieldName] = [FieldName](), readOptions: FieldReadConfiguration.Options = []) async throws -> NowRecord {
        let readConfig = FieldReadConfiguration(includeFields: includeFields, options: readOptions)
        do {
            let dataResult: Data = try await tableService.record(with: sysId, from: tableName, configuration: configuration)
            let recordResult: NowRecord = dataResult.convertToRecord()
            return recordResult
        } catch {
            print("Fetch failed with NowDataError: \(error)")
            throw error
        }
    }

    NowTableService - registro(com SYSID: SYSID, de tablename: Cadeia de caracteres, configuração: FieldReadConfiguration, conclusão: Escape (<Data, NowDataError>)

    Recupera o registro especificado da tabela especificada e executa um manipulador de conclusão depois que o registro é recuperado.

    Se necessário, você pode decodificar os resultados de retorno em um modelo codificado personalizado ou pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) em vez disso. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()
    Para conjuntos de resultados grandes, use NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) função para buscar resultados paginados.
    Tabela 39. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusão Escape (<Data, NowDataError>) Manipulador de conclusão a ser executado depois que os registros forem recuperados.
    Valores de retorno:
    • Dados - Registros solicitados
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 40. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func fetchTableRecords( tableName: String, filterQuery: String, includeFields: [FieldName] = [FieldName](), readOptions: FieldReadConfiguration.Options = [], limit: Int?) {
      let readConfig = FieldReadConfiguration(includeFields: includeFields, options: readOptions)
      let config = FetchConfiguration(Filter(query: filterQuery), limit, readConfig)
      tableService.records (from: tableName, configuration: fetchConfiguration) { [weak self] result in
        switch result {
          case .success(let dataResult):
            let recordResult: [NowRecord] = dataResult.convertToRecords()
            // Return recordResult
    
          case .failure(let error):
            // Failed to fetch record with NowDataError
        }
      }
    }

    NowTableService - registro(com SYSID: SYSID, de tablename: Cadeia de caracteres, configuração: FieldReadConfiguration? nulo)

    Cria um fornecedor para recuperar um registro especificado da tabela especificada em um ServiceNow instância.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Tabela 41. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 42. Retornos
    Tipo Descrição
    AnyPublisher<Data, NowDataError> Objeto de dados que contém os registros especificados.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como criar uma função que recupera o registro especificado da tabela especificada, com os campos especificados. A saída da chamada é um ByteArray que permite converter os dados em qualquer modelo desejado.

    tableService.record(with: sysId, from: tableName, configuration: fetchConfiguration)
        .subscribe(on: DispatchQueue.global())
        .receive(on: DispatchQueue.main)
        .convertToRecord()
        .sink { completion in
            if case let .failure(error) = completion {
                print("Record retrieval failed with NowDataError: \(error)")
            }
        } receiveValue: { record in
            print("Successfully retrieved record: \(record)")
        }
        .store(in: &subscriptions)

    NowTableService - registros (de tablename: Cadeia de caracteres, configuração: FetchConfiguration? lançamentos assíncronos

    Recupera registros da tabela especificada.

    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Para conjuntos de resultados grandes, use NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) função para buscar resultados paginados.
    Tabela 43. Parâmetros
    Nome Tipo Descrição
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 44. Retornos
    Tipo Descrição
    Dados Retornado quando o método é bem-sucedido. Objeto de dados que contém os registros especificados.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    O exemplo de código a seguir mostra como chamar este método.

    func fetchTableRecords( tableName: String, filterQuery: String,
     includeFields: [FieldName] = [FieldName](), readOptions:
     FieldReadConfiguration.Options = [], limit: Int?) {
        let readConfig = FieldReadConfiguration(includeFields: includeFields, options: readOptions)
        let config = FetchConfiguration(Filter(query: filterQuery), limit, readConfig)
        do {
          let dataResult: Data = try await tableService.records(from: tableName, configuration: config)
          let recordResult: [NowRecord] = dataResult.convertToRecords()
          // return recordResult
        } catch {
          print("Fetch failed with NowDataError: \(error)")
          throw error 
      }
    }

    NowTableService - registros (de tablename: Cadeia de caracteres, configuração: FetchConfiguration? (<Data, NowDataError>)

    Recupera registros de uma tabela especificada e executa o. completionmanipulador depois que os registros são recuperados.

    Se necessário, você pode decodificar os resultados de retorno em um modelo codificado personalizado ou pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) em vez disso. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()
    Para conjuntos de resultados grandes, use NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) função para buscar resultados paginados.
    Tabela 45. Parâmetros
    Nome Tipo Descrição
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusão Escape (<Data, NowDataError>) Manipulador de conclusão a ser executado depois que os registros forem recuperados.
    Valores de retorno:
    • Dados - Registros solicitados
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 46. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    func fetchTableRecords( tableName: String, filterQuery: String, includeFields: [FieldName] = [FieldName](), readOptions: FieldReadConfiguration.Options = [], limit: Int?) {
      let readConfig = FieldReadConfiguration(includeFields: includeFields, options: readOptions)
      let config = FetchConfiguration(Filter(query: filterQuery), limit, readConfig)
      tableService.records (from: tableName, configuration: fetchConfiguration) { [weak self] result in
        switch result {
          case .success(let dataResult):
            let recordResult: [NowRecord] = dataResult.convertToRecords()
            // return recordResult
    
          case .failure(let error):
            // Failed to fetch record with NowDataError
        }
      }
    }

    NowTableService - registros (de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo)

    Cria um fornecedor que permite recuperar registros da tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Para conjuntos de resultados grandes, use NowTableService - paginator(de tablename: Cadeia de caracteres, configuração: FetchConfiguration? nulo) função para buscar resultados paginados.
    Tabela 47. Parâmetros
    Nome Tipo Descrição
    Do tablename Cadeia de caracteres Nome da tabela da qual recuperar os registros, como incidente .
    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 48. Retornos
    Tipo Descrição
    AnyPublisher<Data, NowDataError> Objeto de dados que contém os registros especificados.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como criar uma função que busca vários registros de uma tabela especificada. Ele cria um objeto que programará a solicitação para ser executada em algum momento no futuro e retornará uma resposta ByteArray.

    tableService.records(from: tableName, configuration: fetchConfiguration)
        .subscribe(on: DispatchQueue.global())
        .receive(on: DispatchQueue.main)
        .convertToRecords()
        .sink { completion in
            if case let .failure(error) = completion {
                print("Record retrieval failed with NowDataError: \(error)")
            }
        } receiveValue: { records in
            print("Successfully retrieved records: \(records)")
        }
        .store(in: &subscriptions)

    NowTableService - update<Model: SysIdentifiableModel>(_ model: Model, em tablename: Cadeia de caracteres, codificador: .Default, writeOptions: FieldWriteOptions? Configuração: FetchConfiguration? lançamentos assíncronos

    Atualiza o modelo codificável especificado na tabela especificada.

    Tabela 49. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel modelo a ser atualizado na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 50. Retornos
    Tipo Descrição
    Modelo Retornado quando o método é bem-sucedido. Modelo decodificável que foi atualizado na tabela especificada.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    struct User: SysIdentifiableModel {
        var sysId: String = ""
        var name: String}
         
    func updateUser(user: User) async throws -> User {
        do {
            let result = try await tableService.update(user, in: “sys_user”)
            return result
        } catch {
            print("Update failed with NowDataError: \(error)")
            throw error
        }
    }

    NowTableService - update<Model: SysIdentifiableModel>(_ model: Model, em tablename: Cadeia de caracteres, codificador: .Default, writeOptions: FieldWriteOptions? Configuração: FetchConfiguration? (<Model, NowDataError>)

    Atualiza o modelo codificável especificado na tabela especificada e executa o. completionmanipulador.

    Tabela 51. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel modelo a ser atualizado na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusão Escape (<Model, NowDataError>) Manipulador de conclusão a ser executado após atualizar os modelos codificáveis especificados.
    Valores de retorno:
    • Modelo de sucesso:
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 52. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let user = User(sysId: "12345", name: "abel")
    let coder: Coder = .default
    
    tableService.update(user, in: "sys_user") { [weak self] result in
      switch result {
        case .success(let model):
          do {
            let data = try coder.jsonEncoder.encode(model)
            self?.publish(data: data)
          } catch {
            self?.publish(result: .failure(error))
          }            
        case .failure(let error):
          // Failed to update with NowDataError
          self?.publish(result: .failure(error))
      }
    }

    NowTableService - update<Model: SysIdentifiableModel>(_ model: Model, em tablename: Cadeia de caracteres, codificador: .Default, writeOptions: FieldWriteOptions? Configuração: FetchConfiguration? nulo)

    Atualiza o modelo codificável especificado na tabela especificada.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    Tabela 53. Parâmetros
    Nome Tipo Descrição
    modelo Modelo SysIdentifiableModel modelo a ser atualizado na tabela.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    codificador Codificador Opcional. Codificador para usar para codificar ou decodificar dados enviados e recebidos do ServiceNow instância.
    Valores possíveis:
    • Padrão: Os codificadores padrão formatam datas usando Yyy-MM-dd HH:mm:ss formate usando o dispositivo Localidade e. Fuso horário .
    • Personalizado (JSONEncoder, JSONDecoder):

      Usar personalizado Codificadores para ter controle mais detalhado na decodificação/codificação JSON.

      Use esta enumeração somente para fornecer a sua própria JSONEncoder e. JSONDecoder , por exemplo, ao usar formatos de data especiais, fusos horários ou localidades.

      let myEncoder = JSONEncoder()
      myEncoder.dateFormat = …
      let myDecoder = JSONDecoder()
      myDecoder.dateFormat = …
      let coder: Coder = .custom(myEncoder, myDecoder)

    Padrão: .Default

    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 54. Retornos
    Tipo Descrição
    AnyPublisher<Model, NowDataError> Sucesso: Modelos decodificáveis que foram atualizados na tabela especificada.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    O exemplo de código a seguir mostra como chamar este método.

    struct User: SysIdentifiableModel {
      var sysId: String = ""
      var name: String
    }
    
    let user = User(sysId: "12345", name: "abel")
    let coder: Coder = .default
    
    tableService.update(user, in: "sys_user")
      .subscribe(on: DispatchQueue.global())
      .receive(on: DispatchQueue.main)
      .sink { [weak self] completion in
        if case let .failure(error) = completion {
          // Failed to update with NowDataError
          self?.publish(result: .failure(error))
        }
      } receiveValue: { [weak self] updatedModel in
        do {
          let data = try coder.jsonEncoder.encode(updatedModel)
          self?.publish(data: data)
        } catch {
          // Failed to update with NowDataError
          self?.publish(result: .failure(error))
        }
      }
      .store(in: &subscriptions)

    NowTableService - updateRecord(SYSID: SYSID, em tablename: Cadeia de caracteres, com campos: [Fieldname: FieldValue], writeOptions: FieldWriteOptions? Configuração: FieldReadConfiguration? lançamentos assíncronos

    Atualiza o registro especificado com os campos especificados.

    Você pode decodificar os dados em um personalizado Modelo passível de codificação ou você pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 55. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 56. Retornos
    Tipo Descrição
    Dados Retornado quando o método é bem-sucedido. Objeto de dados que contém o registro atualizado.
    NowDataError Lançado quando o método falha.
    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Os exemplos de código a seguir mostram como chamar este método.

    do { 
        let dataResult: Data = try await tableService.updateRecord(with: fields, in: tableName, writeOptions: writeOptions, configuration: configuration) 
        let recordResult: NowRecord = dataResult.convertToRecord() 
    } catch { 
        print("Record update failed with NowDataError: \(error)") 
    }

    NowTableService - updateRecord(SYSID: SYSID, em tablename: Cadeia de caracteres, com campos: [Fieldname: FieldValue], writeOptions: FieldWriteOptions? Configuração: FieldReadConfiguration? Conclusão: Escape (<Data, NowDataError>)

    Atualiza o registro especificado com os campos especificados e executa o. completionmanipulador depois que o registro é salvo.

    Se necessário, você pode decodificar os resultados de retorno em um modelo codificado personalizado ou pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) em vez disso. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 57. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    conclusão Escape (<Data, NowDataError>) Manipulador de conclusão a ser executado depois que os registros forem recuperados.
    Valores de retorno:
    • Dados - Registros solicitados
    • NowDataError
      • AccessToken(AccessTokenProviderError)
        • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
          • AccessTokenRecupereToken
          • UserSessionError(_ erro: Erro)

        Lançado quando há um erro no token de acesso.

      • AnexoValidação

        Lançado quando um anexo falha na validação.

      • BadResponse(statusCode: HTTPStatusCode)
        • HTTPStatusCodeCódigo de status recebido da instância.

        Acionado quando uma solicitação retorna uma resposta inesperada

      • CannotDecodeModel(DecodingError)
        • DecodingErrorErro de decodificação detectado.

        Lançado quando um modelo codificável não pode ser decodificado do JSON.

      • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
        • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
        • fromCadeia de caracteres a ser decodificada para o tipo especificado.

        Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

      • CannotEncodeModel(EncodingError)
        • EncodingErrorErro de codificação detectado.

        Lançado quando um modelo codificável não pode ser codificado para JSON.

      • CannotParseResponse

        Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

      • URL inválida

        Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

      • MissingAttachmentMetadados

        Acionado quando o cabeçalho de metadados do anexo está ausente.

      • MissingServiceConfiguration

        Acionado quando uma configuração de serviço esperada está ausente.

      • MissingSySID

        Acionado quando um parâmetro sys_id esperado está ausente.

      • Rede (NetworkServiceError)
        • GenericError (cadeia de caracteres)
        • OperaçãoCancelada
        • Serviço​desabilitado
        • ServerError (Erro)
        • SystemError (Erro)

        Disparado quando um serviço de rede encontrou um erro.

    Tabela 58. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo de código a seguir mostra como chamar este método.

    tableService.updateRecord(sysId: sysId, in: tableName, with: fields, writeOptions: writeOptions, configuration: readConfiguration) { [weak self] result in
      switch result {
        case .success(let data):
          self?.publish(data: data)
        case .failure(let error):
           // Failed to update with NowDataError
      }
    }

    NowTableService - updateRecord(SYSID: SYSID, em tablename: Cadeia de caracteres, com campos: [Fieldname: FieldValue], writeOptions: FieldWriteOptions? Configuração: FieldReadConfiguration? nulo)

    Atualiza o registro especificado com os campos especificados.

    Nota:
    Este método foi descontinuado. Em vez disso, você deve usar a implementação async/await do método.
    . o fornecedor emite dados que você pode decodificar em um personalizado Modelo passível de codificação ou você também pode usar NowTableService - paginator<Model: Decodable>(de tablename: Cadeia de caracteres, caminho: Cadeia de caracteres nulo) função. Como alternativa, você pode usar a função de conveniência ConvertToRecords() Para transformar dados em um objeto NowRecord. A seguir mostra como converter um fornecedor para emitir NowRecords:
    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()
    Nota:
    Todos os campos em um registro podem não estar disponíveis para atualização. Por exemplo, campos que têm um prefixo de sys_ normalmente são parâmetros do sistema que são gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
    Tabela 59. Parâmetros
    Nome Tipo Descrição
    sysId Cadeia de caracteres Sys_id do registro a ser retornado do ServiceNow instância.
    com campos [Fieldname: FieldValue] Pares nome-valor dos campos a serem incluídos no registro.
    Em tablename Cadeia de caracteres Nome da tabela na qual gravar os registros, como incidente .
    WriteOptions CampoWriteOptions Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro.

    Padrão: Nil

    configuração FetchConfiguration Opcional. Configuração a ser aplicada aos registros recuperados, incluindo filtros que definem os registros a serem retornados, o limite de tamanho da página de paginação, quais campos recuperar e o que incluir nos campos.

    Padrão: Nil - Todos os registros retornados.

    Tabela 60. Retornos
    Tipo Descrição
    AnyPublisher<Data, NowDataError> Objeto de dados que contém o registro atualizado.

    NowDataError

    • AccessToken(AccessTokenProviderError)
      • AccessTokenProviderErrorCódigo ou mensagem de erro do provedor do token de acesso.
        • AccessTokenRecupereToken
        • UserSessionError(_ erro: Erro)

      Lançado quando há um erro no token de acesso.

    • AnexoValidação

      Lançado quando um anexo falha na validação.

    • BadResponse(statusCode: HTTPStatusCode)
      • HTTPStatusCodeCódigo de status recebido da instância.

      Acionado quando uma solicitação retorna uma resposta inesperada

    • CannotDecodeModel(DecodingError)
      • DecodingErrorErro de decodificação detectado.

      Lançado quando um modelo codificável não pode ser decodificado do JSON.

    • CannotDecodeProperty(tipo: Qualquer, de: Cadeia de caracteres)
      • type: Tipo encapsulado para decodificar a partir de uma cadeia de caracteres.
      • fromCadeia de caracteres a ser decodificada para o tipo especificado.

      Acionado quando um valor encapsulado de cadeia de caracteres não pode ser decodificado do JSON.

    • CannotEncodeModel(EncodingError)
      • EncodingErrorErro de codificação detectado.

      Lançado quando um modelo codificável não pode ser codificado para JSON.

    • CannotParseResponse

      Acionado quando uma resposta da instância não pode ser analisada em seu formato esperado.

    • URL inválida

      Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres ilegais em uma URL ou for uma cadeia de caracteres vazia.

    • MissingAttachmentMetadados

      Acionado quando o cabeçalho de metadados do anexo está ausente.

    • MissingServiceConfiguration

      Acionado quando uma configuração de serviço esperada está ausente.

    • MissingSySID

      Acionado quando um parâmetro sys_id esperado está ausente.

    • Rede (NetworkServiceError)
      • GenericError (cadeia de caracteres)
      • OperaçãoCancelada
      • Serviço​desabilitado
      • ServerError (Erro)
      • SystemError (Erro)

      Disparado quando um serviço de rede encontrou um erro.

    Este exemplo mostra como criar uma função que atualiza um registro na tabela especificada, com os campos especificados. A saída da chamada é um ByteArray que permite converter os dados em qualquer modelo desejado.

    tableService.updateRecord(sysId: sysId, in: tableName, with: fields, writeOptions: writeOptions, configuration: readConfiguration)
        .subscribe(on: DispatchQueue.global())
        .receive(on: DispatchQueue.main)
        .convertToRecord()
        .sink { completion in
            if case let .failure(error) = completion {
                print("Update failed with NowDataError: \(error)")
            }
        } receiveValue: { record in
            print("Record updated: \(record)")
        }
        .store(in: &subscriptions)