---
sourceDocument: Referência de API do Xanadu
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/pt-BR/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - pt-BR

ft:publication_title :

    - Referência de API do Xanadu

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Classe NowTableService - iOS

# Classe NowTableService - iOS {#ariaid-title1}

* Versão de lançamento: Xanadu
* 
* Atualizado 1 de ago. de 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 76 min. de leitura

A classe NowTableService fornece funções que permitem executar operações de criação, leitura, atualização e exclusão em registros de tabelas ServiceNow existentes.
{#NowTableServiceiOSAPI__table_vx2_klw_5pb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| configuração | [NowServiceConfiguration](https://servicenow-prod.fluidtopics.net/flpam5S9jLear5y_v4eXdA#NowServiceConfigurationiOSStruct "A estrutura NowServiceConfiguration define informações de configuração para um serviço da feição.") | Definições de configuração fornecidas quando o serviço foi inicializado. |
[Tabela 1. Propriedades]

{#NowTableServiceiOSAPI__table_vx2_klw_5pb}

## NowTableService - criar\<Model: SysIdentifiableModel\> (_ model: Model, in tableName: String, coder: Coder, writeOptions: FieldWriteOptions, configuração: FetchConfiguration) lançamentos assíncronos {#ariaid-title2}

Insere o modelo Codable especificado na tabela especificada.
Para criar um novo registro por modelo, o modelo deve estar em conformidade com o protocolo `SysIdentifiableModel`. Cada tabela normalmente terá seu próprio modelo.

O parâmetro sys_Id do modelo é ignorado durante a criação, pois o sysId é gerado pela plataforma ServiceNow. A plataforma \[ ServiceNow gerada sys_Id é retornada no modelo de `resultado` do manipulador completion.
{#NTblServ-create-async_S_S_S_O_O__table_tqk_gsk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | SysIdentifiableModel | Definição de modelo dos campos a serem inseridos na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-create-async_S_S_S_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 2. Parâmetros]

{#NTblServ-create-async_S_S_S_O_O__table_tqk_gsk_spb} {#NTblServ-create-async_S_S_S_O_O__table_uqk_gsk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Modelo | Retornado quando o método é bem-sucedido. Modelo codificável 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-create-async_S_S_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 3. Retorna]

{#NTblServ-create-async_S_S_S_O_O__table_uqk_gsk_spb}  
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 - criar\<Model: SysIdentifiableModel\> (_ modelo: modelo, em tableName: cadeia de caracteres, codificador: codificador, writeOptions: FieldWriteOptions, configuração: FetchConfiguration, conclusão: @escaping (resultado\<Model, NowDataError\> )) {#ariaid-title3}

Insere o modelo Codable especificado na tabela especificada e executa o manipulador completion.
Para criar um novo registro por modelo, o modelo deve estar em conformidade com o protocolo `SysIdentifiableModel`. Cada tabela normalmente 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):
          ...
      }
    }

O parâmetro sys_Id do modelo é ignorado durante a criação, pois o sysId é gerado pela plataforma ServiceNow. A plataforma \[ ServiceNow gerada sys_Id é retornada no modelo de `resultado` do manipulador completion.
{#NTblServ-create_S_S_S_O_O_O__table_tqk_gsk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | SysIdentifiableModel | Definição de modelo dos campos a serem inseridos na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-create_S_S_S_O_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<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: * Sucesso: modelo - Dados para o tipo de modelo criado. * Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-create_S_S_S_O_O_O__NowDataErroriOS-ul-enum} {#NTblServ-create_S_S_S_O_O_O__ul_dpx_jvk_spb} |
[Tabela 4. Parâmetros]

{#NTblServ-create_S_S_S_O_O_O__table_tqk_gsk_spb} {#NTblServ-create_S_S_S_O_O_O__table_uqk_gsk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum |   |
[Tabela 5. Retorna]

{#NTblServ-create_S_S_S_O_O_O__table_uqk_gsk_spb}  
<br />

    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 - criar\<Model: SysIdentifiableModel\> (model: Model, em tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: Coder = .default, writeOptions: FieldWriteOptions? = nil, configuração: FetchConfiguration = nil) {#ariaid-title4}

Insere um modelo codificável na tabela especificada.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.  
Para criar um novo registro por modelo, o modelo deve estar em conformidade com o protocolo `SysIdentifiableModel`. Cada tabela normalmente 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:  
O parâmetro sys_Id do modelo é ignorado durante a criação. O sysId é atribuído pela plataforma ServiceNow. A plataforma \[ ServiceNow gerada sys_Id é retornada no modelo de retorno de chamada de `getValue` do fornecedor.
{#NTblServ-create_S_S_S_S_O_O__table_pnc_xkk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | SysIdentifiableModel | Modelo`SysIdentifiableModel` a ser inserido na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| caminho | Cadeia de caracteres | Opcional. Caminho separado por pontos para o tipo aninhado. Por exemplo, `result` ou `foo.bar.baz` para aninhamento mais profundo. Padrão: `Constants.resultPath` |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-create_S_S_S_S_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 6. Parâmetros]

{#NTblServ-create_S_S_S_S_O_O__table_pnc_xkk_spb} {#NTblServ-create_S_S_S_S_O_O__table_qnc_xkk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Model,NowDataError\> | Sucesso: modelo codificável 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. Falha: NowDataError @escaping (resultado\<Model, NowDataError\> ) |
[Tabela 7. Retorna]

{#NTblServ-create_S_S_S_S_O_O__table_qnc_xkk_spb}  
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? = nil, configuração: FieldReadConfiguration? = nil) lançamentos assíncronos {#ariaid-title5}

Insere um registro na tabela especificada que contém os campos especificados.
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-createRecord-async_S_O_O__table_lww_l4j_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 8. Parâmetros]

{#NTblServ-createRecord-async_S_O_O__table_lww_l4j_ppb} {#NTblServ-createRecord-async_S_O_O__table_mww_l4j_ppb__entry__2}

| 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-createRecord-async_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 9. Retorna]

{#NTblServ-createRecord-async_S_O_O__table_mww_l4j_ppb}  
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: String, writeOptions: FieldWriteOptions, configuração: FieldReadConfiguration, conclusão: @escaping (Resultado\<Data, NowDataError\> ) {#ariaid-title6}

Insere o registro especificado na tabela especificada e executa o manipulador completion depois que o registro é salvo.
Se necessário, você pode decodificar os resultados de retorno em um modelo Codable personalizado ou usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-createRecord_S_O_O_O__table_vk3_yqj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FieldReadConfiguration](https://servicenow-prod.fluidtopics.net/g59hnw4BAiNAzfl5TbNKyw#FieldReadConfigurationiOSStruct "A estrutura FieldReadConfiguration permite que você configure quais campos buscar de uma tabela de instância ServiceNow e em qual formato.") | Opcional. Opções de configuração que especificam quais campos serão retornados e o que será incluído nos campos. Padrão: nulo |
| conclusão | @escaping (resultado\<Data, NowDataError\> ) | Manipulador de conclusão a ser executado depois que os registros forem recuperados. Valores de retorno: * Sucesso: dados - Registros solicitados * Erro: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-createRecord_S_O_O_O__NowDataErroriOS-ul-enum} {#NTblServ-createRecord_S_O_O_O__ul_uzx_thj_ppb} |
[Tabela 10. Parâmetros]

{#NTblServ-createRecord_S_O_O_O__table_vk3_yqj_ppb} {#NTblServ-createRecord_S_O_O_O__table_wk3_yqj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 11. Retorna]

{#NTblServ-createRecord_S_O_O_O__table_wk3_yqj_ppb}  
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: String, writeOptions: FieldWriteOptions? = nil, configuração: FieldReadConfiguration? = nil) {#ariaid-title7}

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 assíncrona/aguardar do método.  
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-createRecord_S_O_O__table_lww_l4j_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 12. Parâmetros]

{#NTblServ-createRecord_S_O_O__table_lww_l4j_ppb} {#NTblServ-createRecord_S_O_O__table_mww_l4j_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Data, NowDataError\> | Sucesso: objeto de dados que contém o registro atualizado. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-createRecord_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 13. Retorna]

{#NTblServ-createRecord_S_O_O__table_mww_l4j_ppb}  
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 {#ariaid-title8}

Exclui o modelo Codable especificado da tabela especificada.
{#NTblServ-delete-async_S_S__table_qvl_lzk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | `SysIdentifiableModel` a ser excluído da tabela. Ele deve conter o sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
[Tabela 14. Parâmetros]

{#NTblServ-delete-async_S_S__table_qvl_lzk_spb} {#NTblServ-delete-async_S_S__table_rvl_lzk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) | Nada é retornado quando o método é bem-sucedido. |
| NowDataError | Lançado quando o método falha. * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-delete-async_S_S__NowDataErroriOS-ul-enum} |
[Tabela 15. Retorna]

{#NTblServ-delete-async_S_S__table_rvl_lzk_spb}  
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: @escaping (resultado\<Void, NowDataError\> )) {#ariaid-title9}

Exclui o modelo Codable especificado da tabela especificada e executa o manipulador completion apropriado.
{#NTblServ-delete_S_S_O__table_zss_k1l_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | `SysIdentifiableModel` a ser excluído da tabela. Ele deve conter o sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
| conclusão | @escaping (resultado\<Void, NowDataError\> ) | Manipulador de conclusão a ser executado após a exclusão do(s) modelo(s) codificável(is) especificado(s). Valores de retorno: * Sucesso: nada foi retornado * Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-delete_S_S_O__NowDataErroriOS-ul-enum} {#NTblServ-delete_S_S_O__ul_dpx_jvk_spb} |
[Tabela 16. Parâmetros]

{#NTblServ-delete_S_S_O__table_zss_k1l_spb} {#NTblServ-delete_S_S_O__table_ats_k1l_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 17. Retorna]

{#NTblServ-delete_S_S_O__table_ats_k1l_spb}  
O exemplo de código a seguir mostra como chamar essa 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: String) {#ariaid-title10}

Exclui o modelo Codable especificado da tabela especificada.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NTblServ-delete_S_S__table_qvl_lzk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | `SysIdentifiableModel` a ser excluído da tabela. Ele deve conter o sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
[Tabela 18. Parâmetros]

{#NTblServ-delete_S_S__table_qvl_lzk_spb} {#NTblServ-delete_S_S__table_rvl_lzk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Void, NowDataError\> | Sucesso: nada foi retornado Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-delete_S_S__NowDataErroriOS-ul-enum} |
[Tabela 19. Retorna]

{#NTblServ-delete_S_S__table_rvl_lzk_spb}  
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, from tableName: String) lançamentos assíncronos {#ariaid-title11}

Exclui o registro especificado da tabela especificada.
{#NTblServ-deleteRecord-async_S_S__table_nvk_2vj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
[Tabela 20. Parâmetros]

{#NTblServ-deleteRecord-async_S_S__table_nvk_2vj_ppb} {#NTblServ-deleteRecord-async_S_S__table_ovk_2vj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) | Nada é retornado quando o método é bem-sucedido. |
| NowDataError | Lançado quando o método falha. * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-deleteRecord-async_S_S__NowDataErroriOS-ul-enum} |
[Tabela 21. Retorna]

{#NTblServ-deleteRecord-async_S_S__table_ovk_2vj_ppb}  
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, from tableName: cadeia de caracteres, conclusão: @escaping (resultado\<Void, NowDataError\> )) {#ariaid-title12}

Exclui o registro especificado da tabela especificada e executa o objeto completion depois que o registro é excluído.
{#NTblServ-deleteRecord_S_S_O__table_krx_yvj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
| conclusão | @escaping (resultado\<Void, NowDataError\> ) | Sucesso: nada é retornado. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-deleteRecord_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 22. Parâmetros]

{#NTblServ-deleteRecord_S_S_O__table_krx_yvj_ppb} {#NTblServ-deleteRecord_S_S_O__table_lrx_yvj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 23. Retorna]

{#NTblServ-deleteRecord_S_S_O__table_lrx_yvj_ppb}  
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, from tableName: cadeia de caracteres) {#ariaid-title13}

Exclui o registro especificado da tabela especificada.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NTblServ-deleteRecord_S_S__table_nvk_2vj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser excluído. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual as informações serão excluídas, como incidente. |
[Tabela 24. Parâmetros]

{#NTblServ-deleteRecord_S_S__table_nvk_2vj_ppb} {#NTblServ-deleteRecord_S_S__table_ovk_2vj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Void, NowDataError\> | Sucesso: nada foi retornado Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-deleteRecord_S_S__NowDataErroriOS-ul-enum} |
[Tabela 25. Retorna]

{#NTblServ-deleteRecord_S_S__table_ovk_2vj_ppb}  
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(configuration: NowServiceConfiguration, coreServiceProvider: NowCoreServiceProviding? = nil) {#ariaid-title14}

Cria um objeto NowTableService.
{#NTblServ-init_S_S__table_djd_fv3_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| configuração | [NowServiceConfiguration](https://servicenow-prod.fluidtopics.net/flpam5S9jLear5y_v4eXdA#NowServiceConfigurationiOSStruct "A estrutura NowServiceConfiguration define informações de configuração para um serviço da feição.") | 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: nulo |
[Tabela 26. Parâmetros]

{#NTblServ-init_S_S__table_djd_fv3_ppb}  
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 - modelo\<Model: Decodable\> (com sysId: SysID? = nil, from tableName: String, path: String = Constants.resultPath, coder: Coder = .default, configuração: FetchConfiguration? = nil) lançamentos assíncronos {#ariaid-title15}

Habilita a recuperação de modelo(s) decodificável(is) de uma tabela especificada.
As respostas da APIda tabela são aninhadas dentro de um parâmetro result 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 - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") ou [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento.") para buscar modelos paginados.
{#NTblServ-model-async_S_S_S_S_O__table_nbq_yyj_spb__entry__3}{#NTblServ-model-async_S_S_S_S_O__mobilesdkiOS-tableName-entry}

| 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: nulo |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| caminho | Cadeia de caracteres | Caminho separado por pontos para o tipo aninhado. Por exemplo, `result` ou `foo.bar.baz` para aninhamento mais profundo. Padrão: `resultado` |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-model-async_S_S_S_S_O__ul_nx3_wrd_sqb} Padrão: .default |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 27. Parâmetros]

{#NTblServ-model-async_S_S_S_S_O__table_nbq_yyj_spb} {#NTblServ-model-async_S_S_S_S_O__table_obq_yyj_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Modelo | Retornado quando o método é bem-sucedido. Modelos decodificáveis. |
| NowDataError | Lançado quando o método falha. * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-model-async_S_S_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 28. Retorna]

{#NTblServ-model-async_S_S_S_S_O__table_obq_yyj_spb}  
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 `[User].self`.

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

## NowTableService - modelo\<Model: Decodable\> (_ tipo: Model.Type, com sysId: SysID? = nil, from tableName: String, path: String = Constants.resultPath, coder: Coder = .default, configuração: FetchConfiguration? = nil, conclusão: @escaping (Result\<Model, NowDataError\> )) {#ariaid-title16}

Recupera modelos decodificáveis de uma tabela especificada.
As respostas da APIda tabela são aninhadas dentro de um parâmetro result 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.
{#NTblServ-model_S_S_S_S_S_O_O__table_trc_vfk_spb__entry__3}{#NTblServ-model_S_S_S_S_S_O_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| tipo | Modelo.Tipo | 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 pelas configurações configuration. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| caminho | Cadeia de caracteres | Opcional. Caminho separado por pontos para o tipo aninhado. Por exemplo, `result` ou `foo.bar.baz` para aninhamento mais profundo. Padrão: `Constants.resultPath` |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Padrão: `.default` |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<Model, NowDataError\> ) | Manipulador de conclusão a ser executado após recuperar o(s) modelo(s) decodificável(is) especificado(s). Valores de retorno para o manipulador de conclusão: * Sucesso: dados para o tipo de modelo solicitado. * Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-model_S_S_S_S_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 29. Parâmetros]

{#NTblServ-model_S_S_S_S_S_O_O__table_trc_vfk_spb} {#NTblServ-model_S_S_S_S_S_O_O__table_urc_vfk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 30. Retorna]

{#NTblServ-model_S_S_S_S_S_O_O__table_urc_vfk_spb}  
Para recuperar uma coleção de modelos User decodificados.

    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 `[User].self`.

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

## NowTableService - modelo\<Model: Decodable\> (com sysId: SysID? = nil, from tableName: String, path: String = Constants.resultPath, coder: Coder = .default, configuração: FetchConfiguration? = nil) {#ariaid-title17}

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 assíncrona/aguardar do método.  
As respostas da APIda tabela são aninhadas dentro de um parâmetro result 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 - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") ou [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento.") para buscar modelos paginados.
{#NTblServ-model_S_S_S_S_O__table_nbq_yyj_spb__entry__3}{#NTblServ-model_S_S_S_S_O__mobilesdkiOS-tableName-entry}

| 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: nulo |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| caminho | Cadeia de caracteres | Caminho separado por pontos para o tipo aninhado. Por exemplo, `result` ou `foo.bar.baz` para aninhamento mais profundo. Padrão: `resultado` |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-model_S_S_S_S_O__ul_nx3_wrd_sqb} Padrão: .default |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 31. Parâmetros]

{#NTblServ-model_S_S_S_S_O__table_nbq_yyj_spb} {#NTblServ-model_S_S_S_S_O__table_obq_yyj_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Model, NowDataError\> | Sucesso: o fornecedor retorna um ou mais modelos decodificáveis. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-model_S_S_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 32. Retorna]

{#NTblServ-model_S_S_S_S_O__table_obq_yyj_spb}  
Para obter um fornecedor que forneça modelos de usuário decodificados 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 tipo de modelo `User.self`, em vez de `[User].self`.

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

## NowTableService - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil) {#ariaid-title18}

Cria um paginador que permite a iteração por meio de páginas de registros.
O do paginador O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

Nota:  
A menos que seja substituído no parâmetro configuration, um 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.
{#NTblServ-paginator_S_O__id_fpc_pcj_ppb__entry__3}{#NTblServ-paginator_S_O__mobilesdkiOS-tableName-row}

| Nome | Tipo | Descrição |
|-|-|-|
| tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 33. Parâmetros]

{#NTblServ-paginator_S_O__id_fpc_pcj_ppb} {#NTblServ-paginator_S_O__table_uwv_wv3_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Paginador\<Data\> | Sucesso: objeto do paginador que contém os registros especificados. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-paginator_S_O__NowDataErroriOS-ul-enum} |
[Tabela 34. Retorna]

{#NTblServ-paginator_S_O__table_uwv_wv3_ppb}  

    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 - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo) {#ariaid-title19}

Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento.
As respostas da REST Table API ServiceNow 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; neste 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 seja substituído no parâmetro configuration, um paginador retorna 20 itens por página. Dependendo das avaliações da 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 Combine Publisher para começar a receber dados:

    paginator.publisher
      .subscribe(on: DispatchQueue.global())
      .receive(on: DispatchQueue.main)
      .sink { ... }
      .store(in: &subscriptions)

Nota:  
Como acontece com todas as assinaturas Combine, certifique-se de manter a assinatura para evitar resultados inesperados.
{#NTblServ-paginator_S_S_S_O__table_vds_gtj_spb__entry__3}{#NTblServ-paginator_S_S_S_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| path | Cadeia de caracteres | Caminho separado por pontos para o tipo aninhado. Por exemplo, `result` ou `result.user.photos` para aninhamento mais profundo. Especificar um caminho personalizado permite buscar ou iterar sobre dados aninhados*.* Padrão: `resultado` |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-paginator_S_S_S_O__ul_nx3_wrd_sqb} Padrão: .default |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 35. Parâmetros]

{#NTblServ-paginator_S_S_S_O__table_vds_gtj_spb} {#NTblServ-paginator_S_S_S_O__table_wds_gtj_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Paginador\<Data\> | Sucesso: objeto `Paginator` que contém modelo(s) decodificável(is) paginado(s). Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-paginator_S_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 36. Retorna]

{#NTblServ-paginator_S_S_S_O__table_wds_gtj_spb}  
Este exemplo mostra como obter um objeto Paginator que fornece modelos de usuário decodificados. Você pode buscar o objeto Paginator desejado sugerindo que o compilador retorne 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:  
A API da tabela sempre retorna resultados aninhados abaixo de um caminho de resultado, portanto, você pode eliminar com segurança o parâmetro path.

## NowTableService - registros (com sysId: SysID, from tableName: cadeia de caracteres, configuração: FieldReadConfiguration? = nulo) lançamentos assíncronos {#ariaid-title20}

Recupera um registro especificado da tabela especificada em uma instância ServiceNow.
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

{#NTblServ-record-async_S_S_O__table_fsr_23j_ppb__entry__3}{#NTblServ-record-async_S_S_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 37. Parâmetros]

{#NTblServ-record-async_S_S_O__table_fsr_23j_ppb}{#NTblServ-record-async_S_S_O__table_gsr_23j_ppb__entry__2}

| 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-record-async_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 38. Retorna]

{#NTblServ-record-async_S_S_O__table_gsr_23j_ppb}  
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 - record(com sysId: SysID, from tableName: String, configuração: FieldReadConfiguration, conclusão: @escaping (Resultado\<Data, NowDataError\> ) {#ariaid-title21}

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 Codable personalizado ou usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir 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 a função [NowTableService - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") para buscar resultados paginados.
{#NTblServ-record_S_S_O_O__table_fzv_fnj_ppb__entry__3}{#NTblServ-record_S_S_O_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<Data, NowDataError\> ) | Manipulador de conclusão a ser executado depois que os registros forem recuperados. Valores de retorno: * Sucesso: dados - Registros solicitados * Erro: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-record_S_S_O_O__NowDataErroriOS-ul-enum} {#NTblServ-record_S_S_O_O__ul_uzx_thj_ppb} |
[Tabela 39. Parâmetros]

{#NTblServ-record_S_S_O_O__table_fzv_fnj_ppb} {#NTblServ-record_S_S_O_O__table_gzv_fnj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 40. Retorna]

{#NTblServ-record_S_S_O_O__table_gzv_fnj_ppb}  
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 - record (com sysId: SysID, de tableName: cadeia de caracteres, configuração: FieldReadConfiguration? = nulo) {#ariaid-title22}

Cria um fornecedor para recuperar um registro especificado da tabela especificada em uma instância ServiceNow.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

{#NTblServ-record_S_S_O__table_fsr_23j_ppb__entry__3}{#NTblServ-record_S_S_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 41. Parâmetros]

{#NTblServ-record_S_S_O__table_fsr_23j_ppb}{#NTblServ-record_S_S_O__table_gsr_23j_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Data, NowDataError\> | Sucesso: objeto de dados que contém os registros especificados. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-record_S_S_O__NowDataErroriOS-ul-enum} |
[Tabela 42. Retorna]

{#NTblServ-record_S_S_O__table_gsr_23j_ppb}  
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? = nil) lançamentos assíncronos {#ariaid-title23}

Recupera registros da tabela especificada.
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir 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 a função [NowTableService - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") para buscar resultados paginados.
{#NTblServ-records-async_S_O__id_rzw_lcj_ppb__entry__3}{#NTblServ-records-async_S_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 43. Parâmetros]

{#NTblServ-records-async_S_O__id_rzw_lcj_ppb} {#NTblServ-records-async_S_O__table_yvr_d1j_ppb__entry__2}

| 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-records-async_S_O__NowDataErroriOS-ul-enum} |
[Tabela 44. Retorna]

{#NTblServ-records-async_S_O__table_yvr_d1j_ppb}  
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? = nil, conclusão: @escaping (resultado\<Data, NowDataError\> )) {#ariaid-title24}

Recupera registros de uma tabela especificada e executa o manipulador completion depois que os registros são recuperados.
Se necessário, você pode decodificar os resultados de retorno em um modelo Codable personalizado ou usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir 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 a função [NowTableService - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") para buscar resultados paginados.
{#NTblServ-records_S_O_O__table_uvc_y2j_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<Data, NowDataError\> ) | Manipulador de conclusão a ser executado depois que os registros forem recuperados. Valores de retorno: * Sucesso: dados - Registros solicitados * Erro: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-records_S_O_O__NowDataErroriOS-ul-enum} {#NTblServ-records_S_O_O__ul_uzx_thj_ppb} |
[Tabela 45. Parâmetros]

{#NTblServ-records_S_O_O__table_uvc_y2j_ppb} {#NTblServ-records_S_O_O__table_vvc_y2j_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 46. Retorna]

{#NTblServ-records_S_O_O__table_vvc_y2j_ppb}  
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? = nil) {#ariaid-title25}

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 assíncrona/aguardar do método.  
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir 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 a função [NowTableService - paginador (de tableName: cadeia de caracteres, configuração: FetchConfiguration? = nil)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_O "Cria um paginador que permite a iteração por meio de páginas de registros.") para buscar resultados paginados.
{#NTblServ-records_S_O__id_rzw_lcj_ppb__entry__3}{#NTblServ-records_S_O__mobilesdkiOS-tableName-entry}

| Nome | Tipo | Descrição |
|-|-|-|
| de tableName | Cadeia de caracteres | Nome da tabela da qual os registros serão recuperados, como incidente. |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 47. Parâmetros]

{#NTblServ-records_S_O__id_rzw_lcj_ppb} {#NTblServ-records_S_O__table_yvr_d1j_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Data, NowDataError\> | Sucesso: objeto de dados que contém os registros especificados. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-records_S_O__NowDataErroriOS-ul-enum} |
[Tabela 48. Retorna]

{#NTblServ-records_S_O__table_yvr_d1j_ppb}  
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 a 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 - atualizar\<Model: SysIdentifiableModel\> (_ modelo: modelo, em tableName: cadeia de caracteres, codificador: codificador = .default, writeOptions: FieldWriteOptions? = nil, configuração: FetchConfiguration? = nil) lançamentos assíncronos {#ariaid-title26}

Atualiza o modelo codificável especificado na tabela especificada.
{#NTblServ-update-async_S_S_S_O_O__table_n4q_3yk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | Modelo`SysIdentifiableModel` a ser atualizado na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-update-async_S_S_S_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 49. Parâmetros]

{#NTblServ-update-async_S_S_S_O_O__table_n4q_3yk_spb} {#NTblServ-update-async_S_S_S_O_O__table_o4q_3yk_spb__entry__2}

| 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-update-async_S_S_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 50. Retorna]

{#NTblServ-update-async_S_S_S_O_O__table_o4q_3yk_spb}  
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 - atualizar\<Model: SysIdentifiableModel\> (_ modelo: modelo, em tableName: cadeia de caracteres, codificador: codificador = .default, writeOptions: FieldWriteOptions? = nil, configuração: FetchConfiguration? = nil, conclusão: @escaping (resultado\<Model, NowDataError\> )) {#ariaid-title27}

Atualiza o modelo Codable especificado na tabela especificada e, em seguida, executa o manipulador completion.
{#NTblServ-update_S_S_S_O_O_O__table_nmv_vpr_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | Modelo`SysIdentifiableModel` a ser atualizado na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-update_S_S_S_O_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<Model, NowDataError\> ) | Manipulador de conclusão a ser executado após a atualização do(s) modelo(s) codável(is) especificado(s). Valores de retorno: * Sucesso: modelo * Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-update_S_S_S_O_O_O__NowDataErroriOS-ul-enum} {#NTblServ-update_S_S_S_O_O_O__ul_dpx_jvk_spb} |
[Tabela 51. Parâmetros]

{#NTblServ-update_S_S_S_O_O_O__table_nmv_vpr_spb} {#NTblServ-update_S_S_S_O_O_O__table_omv_vpr_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 52. Retorna]

{#NTblServ-update_S_S_S_O_O_O__table_omv_vpr_spb}  
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 - atualizar\<Model: SysIdentifiableModel\> (_ modelo: modelo, em tableName: cadeia de caracteres, codificador: codificador = .default, writeOptions: FieldWriteOptions? = nil, configuração: FetchConfiguration? = nil) {#ariaid-title28}

Atualiza o modelo codificável especificado na tabela especificada.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.
{#NTblServ-update_S_S_S_O_O__table_n4q_3yk_spb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| modelo | Modelo | Modelo`SysIdentifiableModel` a ser atualizado na tabela. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| codificador | Codificador | Opcional. `Codificador` a ser usado para codificar ou decodificar dados enviados e recebidos da instância ServiceNow. Valores possíveis: * default: os codificadores padrão formatam datas usando o formato `aaaa-MM-dd HH:mm:ss` usando o dispositivo `Locale` e `TimeZone`. * personalizado(JSONEncoder, JSONDecoder): Use codificadores `personalizados` para ter um controle mais refinado na decodificação/codificação JSON. Use esta enumeração somente para fornecer seu próprio `JSONEncoder` e `JSONDecoder`, por exemplo, ao usar formatos de data, fusos horários ou localidades especiais. let myEncoder = JSONEncoder() myEncoder.dateFormat = ... let myDecoder = JSONDecoder() myDecoder.dateFormat = ... let coder: Coder = .custom(myEncoder, myDecoder) {#NTblServ-update_S_S_S_O_O__ul_nx3_wrd_sqb} Padrão: .default |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 53. Parâmetros]

{#NTblServ-update_S_S_S_O_O__table_n4q_3yk_spb} {#NTblServ-update_S_S_S_O_O__table_o4q_3yk_spb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Model, NowDataError\> | Sucesso: modelos decodificáveis que foram atualizados na tabela especificada. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-update_S_S_S_O_O__NowDataErroriOS-ul-enum} |
[Tabela 54. Retorna]

{#NTblServ-update_S_S_S_O_O__table_o4q_3yk_spb}  
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, in tableName: String, withfields: \[FieldName: FieldValue\], writeOptions: FieldWriteOptions? = nil, configuração: FieldReadConfiguration? = nil) lançamentos assíncronos {#ariaid-title29}

Atualiza o registro especificado com os campos especificados.
Você pode decodificar os dados em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-updateRecord-async_S_A_O_O__table_cjl_5sj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 55. Parâmetros]

{#NTblServ-updateRecord-async_S_A_O_O__table_cjl_5sj_ppb} {#NTblServ-updateRecord-async_S_A_O_O__table_djl_5sj_ppb__entry__2}

| 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)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-updateRecord-async_S_A_O_O__NowDataErroriOS-ul-enum} |
[Tabela 56. Retorna]

{#NTblServ-updateRecord-async_S_A_O_O__table_djl_5sj_ppb}  
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, in tableName: cadeia de caracteres, com campos: \[FieldName: FieldValue\], writeOptions: FieldWriteOptions? = nil, configuração: FieldReadConfiguration? = nil, conclusão: @escaping (Resultado\<Data, NowDataError\> ) {#ariaid-title30}

Atualiza o registro especificado com os campos especificados e executa o manipulador completion quando o registro é salvo.
Se necessário, você pode decodificar os resultados de retorno em um modelo Codable personalizado ou usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myResult.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-updateRecord_S_A_O_O_O__table_jq5_ttj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
| conclusão | @escaping (resultado\<Data, NowDataError\> ) | Manipulador de conclusão a ser executado depois que os registros forem recuperados. Valores de retorno: * Sucesso: dados - Registros solicitados * Erro: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-updateRecord_S_A_O_O_O__NowDataErroriOS-ul-enum} {#NTblServ-updateRecord_S_A_O_O_O__ul_uzx_thj_ppb} |
[Tabela 57. Parâmetros]

{#NTblServ-updateRecord_S_A_O_O_O__table_jq5_ttj_ppb} {#NTblServ-updateRecord_S_A_O_O_O__table_kq5_ttj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Nenhum(a) |   |
[Tabela 58. Retorna]

{#NTblServ-updateRecord_S_A_O_O_O__table_kq5_ttj_ppb}  
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, in tableName: String, withfields: \[FieldName: FieldValue\], writeOptions: FieldWriteOptions? = nil, configuração: FieldReadConfiguration? = nil) {#ariaid-title31}

Atualiza o registro especificado com os campos especificados.
Nota:  
Este método foi descontinuado. Em vez disso, você deve usar a implementação assíncrona/aguardar do método.  
O O publicador emite dados que você pode decodificar em um [modelo Codable](https://developer.apple.com/documentation/foundation/archives_and_serialization/encoding_and_decoding_custom_types)personalizado ou também pode usar a função [NowTableService - paginador\<Model: Decodable\> (de tableName: cadeia de caracteres, caminho: cadeia de caracteres = Constants.resultPath, codificador: codificador = .default, configuração: FetchConfiguration? = nulo)](https://servicenow-prod.fluidtopics.net/7OkD2nFbZV5lWhWHvsIMxA#NTblServ-paginator_S_S_S_O "Cria um paginador que permite a iteração de páginas de modelos decodificados que lidam com o aninhamento."). Como alternativa, você pode usar a função de conveniência convertToRecords() para transformar dados em um objeto NowRecord. Veja a seguir como converter um fornecedor para emitir NowRecords:

    let dataPublisher: AnyPublisher<Data, NowDataError> = ...
    let recordsPublisher: AnyPublisher<[NowRecord], NowDataError> = myPublisher.convertToRecords()

Nota:  
Nem todos os campos em um registro podem estar disponíveis para atualização. Por exemplo, os campos que têm um prefixo `sys_` são normalmente parâmetros do sistema gerados automaticamente e não podem ser atualizados. Os campos que não são especificados e não são gerados automaticamente pelo sistema são definidos com o valor nulo do tipo de dados associado.
{#NTblServ-updateRecord_S_A_O_O__table_cjl_5sj_ppb__entry__3}

| Nome | Tipo | Descrição |
|-|-|-|
| sysId | Cadeia de caracteres | Sys_id do registro a ser retornado da instância ServiceNow. |
| com campos | \[FieldName: FieldValue\] | Pares de nome-valor dos campos a serem incluídos no registro. |
| em tableName | Cadeia de caracteres | Nome da tabela na qual os registros serão gravados, como incidente. |
| opções de gravação | [OpçõesDeGravaçãoDeCampo](https://servicenow-prod.fluidtopics.net/ZtGZtjF3Z06oYkKJacKFZQ#FieldWriteOptionsiOSStruct "A classe FieldWriteOptions fornece funções que definem as opções para atualizar ou criar campos em um registro em uma instância ServiceNow.") | Opcional. Opções de configuração a serem aplicadas aos dados que estão sendo gravados no registro. Padrão: nulo |
| configuração | [FetchConfiguration](https://servicenow-prod.fluidtopics.net/a9GMkoCzRGTawluuOqNEJg#FetchConfigiOSStructure "A estrutura FetchConfiguration fornece a capacidade de definir a configuração para buscar registros da sua instância ServiceNow.") | 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 serão recuperados e o que será incluído nos campos. Padrão: nulo - Todos os registros retornados. |
[Tabela 59. Parâmetros]

{#NTblServ-updateRecord_S_A_O_O__table_cjl_5sj_ppb} {#NTblServ-updateRecord_S_A_O_O__table_djl_5sj_ppb__entry__2}

| Tipo | Descrição |
|-|-|
| Qualquer publicador\<Data, NowDataError\> | Sucesso: objeto de dados que contém o registro atualizado. Falha: NowDataError * `accessToken(AccessTokenProviderError)` * AccessTokenProviderError: o código ou a mensagem de erro do provedor de token de acesso. * accessTokenRetrievalFailed * userSessionError(_ erro: Erro) Lançado quando há um erro no token de acesso. * `attachmentValidation` Lançado quando um anexo falha na validação. * `BadResponse(statusCode: HTTPStatusCode)` * HTTPStatusCode: Código de status recebido da instância. Lançado quando uma solicitação retorna uma resposta inesperada * `canDecodeModel(DecodingError)` * DecodingError: erro de decodificação detectado. Lançado quando um modelo Codable não pode ser decodificado do JSON. * `canDecodeProperty(tipo: qualquer, de: cadeia de caracteres)` * type: tipo encapsulado para decodificar a partir de uma cadeia de caracteres. * from: cadeia de caracteres a ser decodificada para o tipo especificado. Lançado quando um valor encapsulado em cadeia de caracteres não pode ser decodificado do JSON. * `can'tEncodeModel(EncodingError)` * EncodingError: erro de codificação detectado. Lançado quando um modelo Codable não pode ser codificado para JSON. * `canParseResponse` Lançado quando uma resposta da instância não pode ser analisada no formato esperado. * `URL inválido` Lançado quando um URL não pode ser formado. Por exemplo, se a cadeia de caracteres contiver caracteres que são ilegais em um URL ou for uma cadeia de caracteres vazia. * `ausenteAttachmentMetadata` Lançado quando o cabeçalho de metadados do anexo está ausente. * `ausenteConfiguraçãoDeServiço` Lançado quando uma configuração de serviço esperada está ausente. * `ausenteSysID` Lançado quando um parâmetro sys_id esperado está ausente. * `network(NetworkServiceError)` * genericError(cadeia de caracteres) * operaçãoCancelada * serviçoDesabilitado * serverError(Erro) * systemError (Erro) Lançado quando um serviço de rede encontrou um erro. {#NTblServ-updateRecord_S_A_O_O__NowDataErroriOS-ul-enum} |
[Tabela 60. Retorna]

{#NTblServ-updateRecord_S_A_O_O__table_djl_5sj_ppb}  
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)


